• JavaScript 68 JavaScript Browser BOM 68.7 JavaScript Timing 事件


    JavaScript

    68 JavaScript Browser BOM

    68.7 JavaScript Timing 事件

    JavaScript 可以在时间间隔内执行。

    这就是所谓的定时事件( Timing Events)。

    68.7.1 Timing 事件

    window 对象允许以指定的时间间隔执行代码。

    这些时间间隔称为定时事件。

    通过 JavaScript 使用的有两个关键的方法:

    • setTimeout(function, milliseconds)

      在等待指定的毫秒数后执行函数。

    • setInterval(function, milliseconds)

      等同于 setTimeout(),但持续重复执行该函数。

    setTimeout()setInterval() 都属于 HTML DOM Window 对象的方法。

    68.7.2 setTimeout() 方法
    window.setTimeout(function, milliseconds);
    
    • 1

    window.setTimeout() 方法可以不带 window 前缀来编写。

    第一个参数是要执行的函数。

    第二个参数指示执行之前的毫秒数。

    【举个栗子】

    单击按钮。等待 3 秒,然后页面会提示 “Hello”:

    
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    68.7.3 如何停止执行?

    clearTimeout() 方法停止执行 setTimeout() 中规定的函数。

    window.clearTimeout(timeoutVariable)
    
    • 1

    window.clearTimeout() 方法可以不带 window 前缀来写。

    clearTimeout() 使用从 setTimeout() 返回的变量:

    myVar = setTimeout(function, milliseconds);
    clearTimeout(myVar);
    
    • 1
    • 2

    【举个栗子】

    添加停止按钮

    
    
    
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    68.7.4 setInterval() 方法

    setInterval() 方法在每个给定的时间间隔重复给定的函数。

    window.setInterval(function, milliseconds);
    
    • 1

    window.setInterval() 方法可以不带 window 前缀来写。

    第一个参数是要执行的函数。

    第二个参数每个执行之间的时间间隔的长度。

    本例每秒执行一次函数 “myTimer”(就像数字手表)

    【举个栗子:显示当前时间】

    var myVar = setInterval(myTimer, 1000);
     
    function myTimer() {
        var d = new Date();
        document.getElementById("demo").innerHTML = d.toLocaleTimeString();
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

    一秒 = 1000毫秒

    68.7.5 如何停止执行?

    clearInterval() 方法停止 setInterval() 方法中指定的函数的执行。

    window.clearInterval(timerVariable)
    
    • 1

    window.clearInterval() 方法可以不带 window 前缀来写。

    clearInterval() 方法使用从 setInterval() 返回的变量:

    myVar = setInterval(function, milliseconds);
    clearInterval(myVar);
    
    • 1
    • 2

    【举个栗子】

    添加了一个“停止时间”按钮:

    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在这里插入图片描述

    68.7.6 更多实例

    在这里插入图片描述

    【由计时时间创建的时钟】

    DOCTYPE html>
    <html>
    <head>
    <script>
    function startTime() {
      var today = new Date();
      var h = today.getHours();
      var m = today.getMinutes();
      var s = today.getSeconds();
      m = checkTime(m);
      s = checkTime(s);
      document.getElementById('txt').innerHTML =
      h + ":" + m + ":" + s;
      var t = setTimeout(startTime, 500);
    }
    function checkTime(i) {
      if (i < 10) {i = "0" + i};  // 在数字 < 10 之前加零
      return i;
    }
    script>
    head>
    
    <body onload="startTime()">
    
    <div id="txt">div>
    
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    在这里插入图片描述

  • 相关阅读:
    三色标记过程
    Cobalt Strike 注入msf会话
    【周周Python百日刷题计划】Day5~内置函数和运算符的使用
    github desktop上传代码
    初识python
    RocketMQ详细配置与使用
    从模型容量的视角看监督学习
    Java版人脸跟踪三部曲之二:开发设计
    pytorch环境配置教程(基于Anaconda)
    基于SSM框架的校园宿舍管理系统 毕业设计源码241738
  • 原文地址:https://blog.csdn.net/weixin_44226181/article/details/127782082