当用户从顶部滚过10px时,我想劫持他们的滚动并将它们向下滚动到某个div。在这发生一次之后,我想释放滚动以随意滚动到哪里。我该怎么做?
我当前的代码可以正常工作,但是在初始滚动之后它不会让用户自由滚动:
$(window).scroll(function() {
//if I scroll more than 1000px...
if($(window).scrollTop() > 10){
$('html,body').animate({scrollTop : $('#main').offset().top}, 900, function(){
h = 2;
});
}
});
答案 0 :(得分:2)
尝试:
var scrolled = false;
$(window).scroll(function() {
//if I scroll more than 1000px...
if($(window).scrollTop() > 10 && scrolled == false){
$('html,body').animate({scrollTop : $('#main').offset().top}, 900, function(){
h = 2;
});
scrolled = true;
} else if($(window).scrollTop() == 0) {
scrolled = false;
}
});