0

これを使ってページをスクロールしています。ただし、ページの設定位置でスクロールを停止したいと思います。

var t;
var scrolling = false;

function doScroll() {
    $('body').scrollTop($('body').scrollTop() + 20);
}

$('#pause').on('click',function(){
    scrolling = !scrolling;
    if(!scrolling){ 
        clearInterval(t);
        return;
    }
    t = setInterval(doScroll, 10);
});

これを doScroll 関数に追加すると、100 から 150 の間の位置でスクロールが停止することを期待していましたが、そうではありません。

if($("#pause").offset().top >=100 && <150){
         clearInterval(t);
}  

何か案は?

4

1 に答える 1

0

とった!条件が正しくない場合は、再起動できるようにスクロールを false に設定する必要がありました...

function doScroll() {
    $('body').scrollTop($('body').scrollTop() + 20);
    if($("#pause").offset().top >=100 && $("#pause").offset().top < 150){
        clearInterval(t);
        scrolling = false;
        return;      
    }
}

zvonaに感謝

于 2013-08-15T13:36:00.087 に答える