定时器

定时器 :

定时器1: **window.setTimeout(callback, time),又叫炸弹定时器。

作用:延迟执行一段程序,仅仅执行一次 (定时炸弹),返回一个数字,表示是哪个定时器。

参数:
callback, 函数定义,函数体中存放定义器要执行的代码
time, 等待的时间,数字,表示的是毫秒

清除定时器:window.clearTimeout(定时器的标识);

代码:

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<style>
    body{
        background-color: blue;
    }
</style>
<body>
    <script>
       var fn=function (){
        document.body.style.backgroundColor="white"
    }
    setTimeout(fn,1000)   
    </script>
</body>
</html>    

定时器2:window.setInterval(callback, time)

callback, 函数定义,函数体中存放定义器要执行的代码。
time, 等待的时间,数字,表示的是毫秒

作用:延迟执行一段程序,重复执行 (闹钟)。返回一个数字,表示是哪个定时器。

清除定时器:window.clearInterval(定时器的标识);

// 开启一个定时器
  var num = setInterval(function(){
    var date = new Date();
    console.log(date);
  },1000);



// 获取按钮
  var btn = document.querySelector('button');
  btn.onclick = function () {
    clearInterval(num);
  };

新年倒计时案例:

简单思想为:
1.获得未来时间戳
2,在定时器中,获得现在时间戳,未来时间戳与现在时间戳的差值为想要得到的倒数时间。
3.将最后的时间戳处理后进行赋值。

过程代码:
1.获得时间戳

        // 获得未来时间戳
        var futureTime = future.getTime()

2.设置定时器,获取当前时间戳

        var timer = setInterval(function () {
            // 定义当前时间
            var today = new Date();
            // 获得现在时间戳
            var nowTime = today.getTime()

新年倒计时案例具体代码:


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script>
    window.onload=function () {
        // 建立日期
        var future = new Date("2021-02-11")
        // 获得未来时间戳
        var futureTime = future.getTime()
        // 定时器  1000ms间隔
        var timer = setInterval(function () {
            // 定义当前时间
            var today = new Date();
            // 获得现在时间戳
            var nowTime = today.getTime()
            // 计算相差的时间戳
            var num = futureTime - nowTime;
            // 相差时间除1000%60获得秒,在取整----parseint数字取整
            var s = parseInt(num / 1000 % 60);
            // 获得分钟
            var min = parseInt(num / 1000 / 60 % 60);
            // 获得小时
            var h = parseInt(num / 1000 / 60 / 60 % 24);
            // 获得天
            var day = parseInt(num / 1000 / 60 / 60 / 24);

            // 获得span标签
            // 获得span标签
            var box = document.querySelector(".time")
            // 在span中填入内容---${day}表示数字
            box.innerHTML = `${day}${h}小时${min}${s}秒`
        }, 1000)
    }
</script>
新年倒计时:<span class="time"></span>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值