2014-01-29 4 views
0

Как я могу получить текущую позицию прокрутки моего браузера ?, я хочу стрелять события базы на странице position.This, что я пробовал:Как получить позицию прокрутки страниц (ось Y)

var scroll_position=document.viewport.getScrollOffsets(); 

window.onscroll = function (event) { 

if(scroll_position>1000) 
{ 
alert('xxxxxxxxxxx'); 
} 

ответ

3

Если предположить, что вы всегда будете испытывать с window, вы можете использовать window.scrollY:

window.onscroll = function (event) 
{ 
    if(this.scrollY > 1000) 
    { 
     alert('xxxxxxxxxxx'); 
    } 
} 

jsFiddle Demo

3

Try с:

window.onscroll = function (event) { 
    if (window.scrollY > 1000) { 
    alert('xxxxxxxxxxx'); 
    } 
} 
1

Как сказал HSZ, сделать

window.onscroll = function (event) { 
var scroll_position = document.viewport.getScrollOffsets(); 
if (scroll_position > 1000) 
{ 
    alert('xxxxxxxxxxx'); 
} 
} 

Проблема с кодом:

var scroll_position=document.viewport.getScrollOffsets(); 

scroll_position устанавливается только один раз, при загрузке страницы - поэтому он остается неизменным (вероятно, 0), и предупреждение никогда не появляется, потому что scroll_position меньше 1000.

hsz положить заявление, которое устанавливает scroll_position в функцию window.onscroll, поэтому она обновляется каждый раз, когда прокручивается страница.

+0

Почему бы просто не использовать 'this.scrollY' внутри обратного вызова? – BenM

+0

всегда есть разные решения. Я поддержал ваш ответ - он работает. – professorfish

Смежные вопросы