当前位置:首页 » 《随便一记》 » 正文

js定时器

23 人参与  2023年05月06日 13:45  分类 : 《随便一记》  评论

点击全文阅读


定时器

js中内置的一个方法

作用

每隔一段时间或者延迟一段时间就执行一段指定的代码

定时器的分类

重复执行定时器

setInterval()

作用

每隔一段时间就会重复执行指定的函数 

语法

setInterval(function(){      代码},时间)

参数

要执行的函数:时间到了就会执行

时间:间隔的时间

单位:毫秒

1s=1000ms

<style>        #box{            width: 100px;            height: 100px;            border: 1px solid red;            font-size: 50px;        }    </style>    <script>    window.onload=function(){        var box=document.getElementById("box");        var i=0;        box.onclick=function(){            setInterval(function(){                box.innerHTML=i;                i++;            },1000);                   };    };</script></head><body>   <div id="box"></div></body>
<style>        #box{            width: 100px;            height: 100px;            border: 1px solid red;            font-size: 50px;        }    </style>    <script>    window.onload=function(){        var box=document.getElementById("box");        var i=0;        box.onclick=function(){          setInterval(change,1000);           //函数在外面定义,这里调用需要用函数名,没有括号()        };        function change(){            i++;            box.innerHTML=i;        }    };</script></head><body>   <div id="box"></div></body>

延迟执行定时器

setTimeout()

作用:延迟执行定时器执行指定函数,只执行一次

语法

setTimeout(function(){        代码},时间);

参数

要执行的函数:当时间到达后会执行这个函数

时间:延迟时间

代码和重复执行定时器很相似

   <style>        #box{            width: 100px;            height: 100px;            border: 1px solid red;            font-size: 50px;        }    </style>    <script>    window.onload=function(){        var box=document.getElementById("box");        var i=0;        box.onclick=function(){            setTimeout(function(){            i++;            box.innerHTML=i;            },1000);                   };           };</script></head><body>   <div id="box"></div></body>

定时器里的this指向

定时器的this指向window的,因为定时器是window身上的一个方法,所以this指向window

<style>        #box{            width: 100px;            height: 100px;            border:1px solid #f00;        }    </style>    <script>        window.onload=function(){            var box=document.getElementById("box");            var i=0;            console.log(this);    //window            box.onclick=function(){                console.log(this); //box                var This=this;//把box存给This,函数内部可以调用                setInterval(function(){                    console.log(this); //window                    i++;                    box.innerHTML=i;                },1000);            };        }    </script></head><body>    <div id="box"></div></body>

清除定时器

定时器的编号

定时器的一个返回值,返回一个数字,代表当前定时器的编号,我们可根据这个来清除定时器

它返回的编号在不同的浏览器里面是不同的,所以没办法直接拿编号去清除定时器

清除定时器的方法

1.清除重复执行定时器

clearInterval(定时器的返回值)

可以声明一个变量,把定时器的返回值都存到这个变量里,然后拿这个变量去清除定时器

   <style>        #box{            width: 100px;            height: 100px;            border:1px solid #f00;        }    </style>      <script>        var n=0;        function add(){            n++;            console.log(n);            //清除定时器的条件一般会放在定时器执行的函数里            if(n==8){                //clearInterval(1);                clearInterval(timer);            }        }        var timer=setInterval(add,1000);        // console.log(setInterval(add,1000)setInterval(add,1000));//1        // setInterval(add,1000);        //定时器在走的过程中,下面代码也会走        alert(1);        if(n==8)    </script></head><body>    <div id="box"></div></body>

                         1.直接把定时器调用放在一个变量赋值的后面,定时器会走吗?

                                timer使用的时候,定时器已经跑了八次了,页面代码已经跑完了

                         var timer=setInterval(add,1000);

                        2.这个timer是在下面声明的,而使用是在上面,可以用到嘛?

2.清除延迟执行定时器

clearTimeout (定时器的返回值)


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/61130.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 新章速递养大的反派疯魔了是什么小说(江曜姬时语)完本阅读无广告(江曜姬时语)
  • 爱,一触就破无广告_妹妹夏夏孟夏人气小说_小说后续在线阅读_无删减免费完结_
  • 他死后前妻疯魔了彩蛋(顾煜迟林筱棠)全书在线下载阅读完美终章小说大结局
  • 此后锦书休寄周窈音全文最新章节(周窈音)全文免费阅读无弹窗大结局_周窈音免费阅读
  • 弹幕说我是捞女?反手收购男主公司养鸡(林朝曦沈墨川)_弹幕说我是捞女?反手收购男主公司养鸡
  • 没给寡嫂抢到La******,老公把我和儿子做成蜡像(顾云州沈云烟)_没给寡嫂抢到La******,老公把我和儿子做成蜡像顾云州沈云烟
  • 出狱后,假千金靠玄术杀疯了(顾九音霍霆修)_出狱后,假千金靠玄术杀疯了
  • 养妹偷我认亲玉佩当上千金,男友当场分手超长版_玉佩陈雨柔养父母一口气看完_小说后续在线阅读_无删减免费完结_
  • 抽卡后,气运之子怎么都缠上来了小说(夏挽棠)(抽卡后,气运之子怎么都缠上来了)全书+后续+结局在线阅读
  • 前传爱意随风消逝续集:全文+番外乔清浅宋轻舟:结局+番外新上热文
  • 宋昭黎陆铭绪(假如从没拥抱你)前文+全本完整阅读预售作品抢先看
  • 终章小说搬空海港!我携军舰嫁军官躺赢了完结篇(温婉历战)已更新+延伸(搬空海港!我携军舰嫁军官躺赢了)清爽版

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1