如果scrollTop大于value,则仅执行此操作

时间:2015-11-09 23:07:35

标签: javascript jquery

当用户从顶部滚过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; 
        });
    }
});

1 个答案:

答案 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;
    }
});
相关问题