繁体   English   中英

滚动时暂停setInterval

[英]Pause setInterval if scrolling

我有一个无限滚动分页脚本,它包含在setInterval()函数中,可每隔x秒追加新数据,两个函数都可以正常工作,但是,每次我开始滚动时,一旦setInterval()刷新div,我都会破坏无限滚动分页,有没有办法防止setInterval()在我滚动时一直运行?

这是我的代码:

$(document).ready(function(){

    $.ajaxSetup({ cache: false });

    setInterval(function(){

        var track_load      = 0;
        var loading         = false;
        var total_groups    = <?php echo $total_groups; ?>;

        $('#live_activity').load("loading_page.php", {'group_no':track_load}, function() {track_load++;});

        $(window).scroll(function() {

            if($(window).scrollTop() + $(window).height() == $(document).height())
            {
                if(track_load <= total_groups && loading==false)
                {
                    loading = true;
                    $('.animation_image').show();

                    $.post('loading_page.php',{'group_no': track_load}, function(data){

                        $("#live_activity").append(data);

                        //hide loading image
                        $('.animation_image').hide();

                        track_load++;
                        loading = false; 

                    }).fail(function(xhr, ajaxOptions, thrownError) {

                        alert(thrownError);
                        $('.animation_image').hide();
                        loading = false;

                    });

                }
            }
        });

    }, 3000);

});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM