当鼠标悬停在特定元素上时,我想向上或向下滚动窗口。
到目前为止,我所拥有的基本上是有效的,但它并不“顺利”。它不停地开始和停止,看起来不太好。您知道如何进行更稳定的平滑滚动吗?
这是我的代码:
doScroll = 0;
$(".helperDown").mouseenter(function() {
scrollHandler = setInterval( function() {
console.log('scrolling down...');
if(doScroll == 0) {
doScroll = 1;
$("html, body").animate({scrollTop: fromTop+50}, 200, 'linear', function() {
doScroll = 0;
});
}
}, 200);
});
$(".helperDown").mouseleave(function() {
clearInterval(scrollHandler);
});
.helperDown
是鼠标必须在其中开始滚动的区域。fromTop
总是在滚动事件后重新计算。