0

Как прокрутить вниз или до определенного положения Y-px в операционном мини-мобильном браузере на странице без использования каких-либо 3-х библиотек, просто чистых js ??? Пробовал все возможное, от scrollTo до SCrollInto View ничего не работает. Помоги пожалуйста.Триггерная прокрутка в опере mini

ответ

2

Поведение прокрутки истинно, как в каждом современном браузере.

Когда вы просто открываете новое окно/вкладку и не касаетесь экрана, API-интерфейс прокрутки javascript через window.scrollTo(x,y) работает fine, потому что вы не указали браузер, куда вы хотите прокрутить.

Но если вы запустите прокрутку события (например, проведите по экрану), когда ваша загрузка страницы браузера игнорирует API прокрутки javascript, например scrollTo. И если вы обновите страницу, API прокрутки javascript не будет работать. Потому что это хорошая практика, чтобы вернуть пользователя на эту страницу, где пользователь был до обновления.

Также хеш-закладки могут scroll страница. Если вы установите #bookmark на URL-адрес страницы, страница будет прокручиваться до закладки, пока вы не прокрутите страницу. И тогда вы прокрутите все, как написано выше: API прокрутки javascript будет проигнорирован.

Но есть один способ прокрутки в любом случае - manipulate с хэш-закладки:

window.scrollTo(0, 500);//will not work if the user scroll the page 
location.hash = '';//reset hash 
setTimeout(function() { 
    location.hash = 'bookmark';//will scroll to bookmark in any case 
}, 1000)//remember about operamini timers limit 

Он работает так, потому что использование должно контролировать страницы, а не его код.

+0

очень полезный комментарий, спасибо, но он не разрешает основную проблему, хотя, поскольку window.scroll вообще не работает даже без прокрутки, когда я просто загружаю свою страницу в код что-то вроде 'window.onload = function() {setTimeout (window.scroll (0,50), 100); } 'Нет прокрутки: –

+1

Мой ответ о том, что' scrollTo' не будет работать, как ваш аспект, и это нормально. И мой пример кода с '# bookmark' показывает, как вы можете имитировать его (он работает в operamini) – Pinal

0

С Opera doc, ниже неподдерживаемых DOM событий разделе вы найдете:

Как вы можете видеть, ключевые события, такие как нажатие клавиши и KeyUp не поддерживаются. Также нет событий касания и прокрутки.

So scroll События не поддерживаются в Opera Mini. См. Other References