我可以使用JS或jQuery检测滚动运动吗?
我只是在用户滚动时,以及当他停止滚动div节目时试图隐藏div。
我试过了:
window.onscroll(function () {
$('.footerGeral').hide();
});
然而它不起作用。
答案 0 :(得分:1)
您可能希望使用scroll
事件,如下所示:
window.addEventListener('scroll', function(evt) {});
现在,您可以检测用户使用evt.deltaX
和evt.deltaY
滚动了多少像素,或者使用document.body.scrollTop
和document.body.scrollLeft
完全滚动了多少像素。
答案 1 :(得分:0)
你几乎是对的,但它是.scroll()
:
$(window).scroll(function () {
$('.footerGeral').hide();
});
你可以用纯JavaScript做到这一点:
window.onscroll = function () {
document.querySelectorAll(".footerGeral")[0].style.display = 'none';
}
注意:仅当您拥有的内容超过视图时才有效。带有滚动条的页面。
答案 2 :(得分:0)
首先:它只适用于实际上有溢出内容(带滚动条)的情况。如果你只是滚动你就不会得到这个事件。
其次,原生语法是:
window.onscroll = function () {
// Your code
};
jQuery方法是:
$(window).scroll(function () {
// Your code
});
答案 3 :(得分:0)
您可以轻松地将Ben Alman的scroll()
与来自jquery.ba-throttle-debounce.js的debounce()
结合使用。
$(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
}));