我可以使用JS或jQuery检测滚动移动吗?检测滚动
我想隐藏一个div只有当用户滚动,当他停止滚动div显示。
我想:
window.onscroll(function() {
$('.footerGeral').hide();
});
但是它不工作。
我可以使用JS或jQuery检测滚动移动吗?检测滚动
我想隐藏一个div只有当用户滚动,当他停止滚动div显示。
我想:
window.onscroll(function() {
$('.footerGeral').hide();
});
但是它不工作。
您是差不多吧,但它是.scroll()
:
$(window).scroll(function() {
$('.footerGeral').hide();
});
可以在纯JavaScript做到这一点,是这样的:
window.onscroll = function() {
document.querySelectorAll(".footerGeral")[0].style.display = 'none';
}
注:这只有你有内容,这不仅仅是观点。带滚动条的页面。
这将如何处理在滚动结束时显示div? –
@ A.T。啊...我不确定。勒梅想到了一种方法。 –
也许这有助于 - > http://stackoverflow.com/questions/3701311/event-when-user-stops-scrolling – naoxink
首先:它只有在你实际上有溢出内容(带滚动条)时才有效。如果您只是滚动,您将无法获得该活动。
其次,本地语法是:
window.onscroll = function() {
// Your code
};
jQuery的做法是:
$(window).scroll(function() {
// Your code
});
您可能需要使用scroll
事件,像这样:
window.addEventListener('scroll', function(evt) {});
现在您可以检测用户使用evt.deltaX
和滚动的像素数,或用document.body.scrollTop
和document.body.scrollLeft
完全滚动了多少。
您可以轻松地将Ben Alman的JQuery scroll()
与debounce()
从jquery.ba-throttle-debounce.js组合起来。
$(window).scroll($.debounce(250, true, function(){
$('.footerGeral').hide(); //scrolling or scrolling stopped for less than 250 ms
}));
$(window).scroll($.debounce(250, function(){
$('.footerGeral').show(); //scrolling stopped for more than 250 ms
}));
检查了这一点 - > http://stackoverflow.com/questions/5515551/how-to-call-a-function-after-scroll-has-ended <--- – Help