0

我正在尝试在 ios 中滚动时执行 javascript。我能想到的唯一方法就是这样。但是,我试图让它在单击 div 时停止并开始滚动,但是当我将它放在 onClick 函数中时它将不起作用。

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

    setInterval(doScroll, 50);
});
4

2 回答 2

1

为什么不只是:

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, 50);
});
于 2013-08-14T08:10:35.010 回答
0

这将打开和关闭滚动。您可能需要添加一些代码来检查滚动结束的时间。

http://jsfiddle.net/YNmZh/7/

document.getElementById( 'pause').addEventListener( "click" , function(){
    if( window.scrollTimerId ){
        window.clearInterval(window.scrollTimerId );
        window.scrollTimerId = null
    }
    else{
        doScroll();
         window.scrollTimerId= window.setInterval( doScroll , 50);
    }

});



 function doScroll(){
     window.scrollBy(0,5);        
}
于 2013-08-14T08:21:18.367 回答