js 自动滚动,鼠标移动停止滚动


    var timer;

    function pageScroller() {
        timer = setTimeout("pageScroller()",3000);  

        if(timer!=""&&timer!=null){
            console.log("begin");
            $(document.body).animate({scrollTop: $("#page-footer").offset().top}, 10000);
        }
    }

    //清除时钟,清除滚动动画
    clearTimer =function(){
        clearTimeout(timer);
        $(document.body).stop(); 
    }


    /**
     * 绑定页面的键盘事件和鼠标事件
     */
    var bindEvent=function(){
        $(document).mousemove(function() {
            clearTimer();
        })      
    }

    $(document).ready(function(){
        pageScroller();
        bindEvent();
    })

设置定时器,自动调用pageScroller()方法.
setTimeOut()只执行一次,所以方法内部又调用自身,可以一直计时

js 自动滚动,鼠标移动停止滚动_第1张图片

清除定时器

js 自动滚动,鼠标移动停止滚动_第2张图片

这样就实现了页面3秒后自动滚动,然后鼠标移动停止动画

你可能感兴趣的:(JS)