zoukankan      html  css  js  c++  java
  • 2:定时器

    知识梳理

    // timeout 暂停;超时
    // interval 间隔 简歇
     

    一  单次定时器:setTimeout();

    1)基本语法:

    // window.setTimeout(回调函数,[延迟的毫秒数]); 

    2)三种调用方式

    //直接写匿名函数
    window.setTimeout(function () {
        alert('100');
    },1000);
    
    //函数名调用
    window.setTimeout(funName,1000);
    
    //字符串函数名 [ 不推荐 ]
    window.setTimeout('funName',1000)
    function fun() {
        alert(200);
    }

    3)注意事项

    // 1 window 可以省略
    //
    1 延迟的毫秒数默认是0 如果写必须是毫秒 1秒 = 1000毫秒 // 3 定时器有很多 我们会给定时器赋值标识符 var time1 = setTimeout();

    4)小案例:5秒后自动关闭广告

    <script>
        window.addEventListener('load',function () {
            var ad = document.querySelector('#ad');
            window.setTimeout(function () {
                ad.style.display = 'none';
    
            },5000)
        });
    </script>
    <div id="ad">广告条</div>

    5)清除单次定时器

    // clearTimeout(定时器名字);

    二 重复定时器 setinterval

    1)基本语法

    // window.setInterval(回调函数,[间隔毫秒数]);
    // 重复调用一个函数,每隔一个时间,就调用一次回调函数
    // 使用和setTimeout一摸一样

    2)代码范例

    window.setInterval(function () {
        console.log(10);
    },1000);
    //没间隔一秒 就执行一次函数 打印10

    3)清除重复定时器

    // clearInterval(定时器名字);
    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
    </head>
    
    <body>
        <button class="begin">开启定时器</button>
        <button class="stop">停止定时器</button>
        <script>
            var begin = document.querySelector('.begin');
            var stop = document.querySelector('.stop');
            var timer = null; // 全局变量  null是一个空对象
            begin.addEventListener('click', function() {
                timer = setInterval(function() {
                    console.log('ni hao ma');
    
                }, 1000);
            })
            stop.addEventListener('click', function() {
                clearInterval(timer);
            })
        </script>
    </body>
    </html>
    //定时器变量一定要在全局作用域下 

    回调函数

    1)普通函数按照代码顺序直接调用

    2)回调函数:回调,就是回头调用的意思。上一件事干完,再回头调用这个函数

    3)element.onclick = function(){}  这个匿名函数也是回调函数

  • 相关阅读:
    进程间的通信如何实现?
    试解释操作系统原理中的作业、进程、线程、管程各自的定义。
    字符数组和strcpy
    字符串转化成整数
    整数字符串转化
    海量数据/日志检索问题
    哈夫曼编码问题
    Trie树,又称单词查找树、字典
    初识面向对象
    序列化 json pickle shelve configparser
  • 原文地址:https://www.cnblogs.com/fuyunlin/p/14451307.html
Copyright © 2011-2022 走看看