我有一个简单的问题,但我找不到解决方案...... 我只是想在我向上滚动页面时启动一个事件(执行一个方法),然后“触摸”它的顶部。我在我的页面中使用JavaScript和jQuery。提前谢谢!
答案 0 :(得分:9)
您应该为此目的使用滚动事件:
$(window).scroll(function() {
if ($(this).scrollTop() == 0) {
//Do whatever you want to do
}
});
你应该注意的一点是,当某人连续滚动到顶部时,偶数将会被触发,虽然你只想在顶部被击中时想要它,为此你可以将事件处理程序定义为函数并放置最后一个scrolltop将值转换为函数局部变量。
$(window).scroll(handleHitTop);
function handleHitTop(event) {
var currentScrollTopValue = $(this).scrollTop();
if (handleHitTop.lastTop === undefined) {
handleHitTop.lastTop = currentScrollTopValue ;
return;
}
if (handleHitTop.lastTop == 0 && currentScrollTopValue == 0) {
return;
}
handleHitTop.lastTop = currentScrollTopValue;
if (handleHitTop.lastTop == 0) {
//Call your event here
}
}
答案 1 :(得分:8)
使用onscroll事件。纯粹的js例子:
window.onscroll = function() {
if(document.body.scrollTop == 0) {
alert('yay!');
}
}
答案 2 :(得分:6)
使用.scroll()
处理程序和.scrollTop()
:
$(window).scroll( function() {
if($(this).scrollTop() == 0) {
alert("Top!!!");
}
});