Как прокрутить вниз или вверх до определенной позиции Y-px в мобильном браузере Opera Mini на странице без использования каких-либо третьих библиотек, только чистый js??? Пробовал все возможное от scrollTo до SCrollInto View ничего не работает. Помогите, пожалуйста.
Триггер прокрутки в опере мини
Ответы (2)
Из документа Opera, ниже раздела Неподдерживаемые события DOM. вы найдете:
Как видите, ключевые события, такие как нажатие клавиши и нажатие клавиши, не поддерживаются. Также нет событий касания и прокрутки.
Таким образом, события scroll
не поддерживаются в Opera Mini. См. другие ссылки.
Поведение прокрутки верно, как и в любом современном браузере.
Когда вы просто открываете новое окно/вкладку и не касаетесь экрана, API прокрутки javascript через window.scrollTo(x,y)
работает отлично потому что вы не указали браузеру, куда вы хотите прокручивать.
Но если вы инициируете событие прокрутки (например, пролистывание), когда ваша страница загружается, браузер будет игнорировать API прокрутки javascript, например scrollTo
. И если вы обновите страницу, API прокрутки javascript не будет работать. Потому что рекомендуется возвращать пользователя на то место страницы, где он был до обновления.
Также хэш-закладки могут прокручивать страницу. Если вы установите #bookmark
для URL-адреса страницы, страница будет прокручиваться до закладки, пока вы не прокрутите страницу. И тогда вы будете прокручивать все, как я написал выше: API прокрутки javascript будет игнорироваться.
Но в любом случае есть один способ прокрутки — манипуляция с хеш-закладками:
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
Это работает так, потому что использование должно управлять страницей, а не ее кодом.
window.onload = function() { setTimeout(window.scroll(0,50),100); }
Прокрутка не происходит :(.
- person Karen Grigoryan; 17.01.2014
scrollTo
не будет работать как ваш аспект и это нормально. И мой пример кода с #bookmark
показывает, как вы можете это сымитировать (это работает в операмини)
- person Pinal; 17.01.2014