我正在使用此代码将滚动绑定到页面上的特定元素。是否可以更改滚动速度?我尝试使用“动画”但没有用。
(function() {
var delay = false;
$(document).on('mousewheel DOMMouseScroll', function(event) {
event.preventDefault();
if(delay) return;
delay = true;
setTimeout(function(){delay = false},100)
var wd = event.originalEvent.wheelDelta || -event.originalEvent.detail;
var a= document.getElementsByTagName('section');
if(wd < 0) {
for(var i = 0 ; i < a.length ; i++) {
var t = a[i].getClientRects()[0].top;
if(t >= 40) break;
}
}
else {
for(var i = a.length-1 ; i >= 0 ; i--) {
var t = a[i].getClientRects()[0].top;
if(t < -20) break;
}
}
$('html,body').animate({
scrollTop: a[i].offsetTop
});
});
})();
尝试按如下方式更新 Animate 方法。
$('html,body').animate({
scrollTop: a[i].offsetTop
}, 500);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句