定时器的运行和停止

这篇博客介绍了如何使用JavaScript创建和停止定时器来控制Div元素的移动。通过包装setInterval函数实现定时器的开启,并通过clearInterval来结束定时器。示例中,两个按钮分别用于启动和停止Div元素向右移动的效果。这是一个关于JavaScript事件监听和DOM操作的实例。
摘要由CSDN通过智能技术生成

运行定时器:当我们想手动开启定时器时,我们可以用一个函数来包装这个定时器,这样的话调用函数时就能开启定时器,例如:

function time() {

                  setInterval(function(){

                  alert('定时器开启成功')

           }, 2000)

        }             //将定时器写进函数。

        time();    //调用函数。

结束定时器:当我们想停止定时器时,可以对定时器本身进行命名,并运用clearInterval函数来结束定时器的运作。

var t = setInterval(function () {

    alert('定时器开启成功')

}, 2000)              //用t来对定时器进行命名
clearInterval(t);     //消除名字为t的这个定时器

接下来是一个完整案例,分别运用两个button按钮来控制一个div盒子的运行和停止


<!DOCTYPE html>
<html lang="zh=CN">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div {
            position: absolute;
            top: 250px;
            left: 300px;
            height: 100px;
            width: 100px;
            border: 2px solid black;
            border-radius: 10px;
        }
        button {
            height: 30px;
            width: 60px;
            position: absolute;
            top: 200px;
            left: 290px;
        }
        button.stop {
            position: absolute;
            top: 200px;
            left: 360px;
        }
    </style>
</head>
<body>
    <button class="right">往右</button>
    <button class="stop">停止</button>
    <div>
    </div>
    <script>
        var div = document.querySelector('div');
        var btn = document.querySelector('button.right');
        var stop = document.querySelector('button.stop');
        var showtime = function () {
            div.style.left = div.offsetLeft + 1 + 'px';
        }
        var t;
        function time() {
            t = setInterval(showtime, 20)
        }
        btn.addEventListener('click', function () {
				clearInterval(t);
            time();
        })
        stop.addEventListener('click', function () {
            clearInterval(t);
        })
    </script>
</body>
</html>

谢谢大家。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值