qq1696518615
୧((〃•̀ꇴ•〃))૭⁺✧
采纳率100%
2021-03-07 17:43

在Layui弹出层success后清除定时器问题

<script>
 function roleupdate(ip){
        layui.use('layer', function(){
            var layer = layui.layer;
            //页面一打开就执行弹层
            layer.ready(function(){
                layer.open({
                    type:2,
                    title:'视频',
                    content:  'toFrVideo?ip='+ip//这里content是一个URL,如果你不想让iframe出现滚动条,你还可以content: ['http://sentsin.com', 'no']
                    ,area:['700px', '550px']
                    ,shade:0.8
                    ,success:function (layero, index) {
                        clearInterval(timer);
                    }
                });
            });

        });
    }
</script>
<script type="text/javascript">
    window.onload = roll(50);
    function roll(t) {
        var ul1 = document.getElementById("comment1");
        var ul2 = document.getElementById("comment2");


        var ulbox = document.getElementById("review_box");

        ul2.innerHTML = ul1.innerHTML;

        ulbox.scrollTop = 0; // 开始无滚动时设为0
        window.timer = setInterval(rollStart, t); // 设置定时器,参数t用在这为间隔时间(单位毫秒),参数t越小,滚动速度越快
        // 鼠标移入div时暂停滚动
        ulbox.onmouseover = function () {
            clearInterval(timer);
        }

        // 鼠标移出div后继续滚动
        ulbox.onmouseout = function () {
            timer = setInterval(rollStart, t);
        }
    }

    // 开始滚动函数
    function rollStart() {
        // 上面声明的DOM对象为局部对象需要再次声明
        var ul1 = document.getElementById("comment1");
        var ul2 = document.getElementById("comment2");


        var ulbox = document.getElementById("review_box");
        // 正常滚动不断给scrollTop的值+1,当滚动高度大于列表内容高度时恢复为0
        if (ulbox.scrollTop >= ul1.scrollHeight) {
            ulbox.scrollTop = 0;
        } else {
            ulbox.scrollTop++;
        }
    }
</script>

 

 

 

有大佬知道为什么我打开弹出层后定时器还在执行,关闭弹出层后再打开定时器就停止了是什么原因?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

为你推荐