网络编程 
首页 > 网络编程 > 浏览文章

JavaScript计时器示例分析

(编辑:jimmy 日期: 2026/5/5 浏览:3 次 )

1.什么是JavaScript计时器?

在JavaScript中,我们可以在设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。

2.计时器类型

一次性计时器:仅在指定的延迟时间之后触发一次。
间隔性触发计时器:每隔一定的时间间隔就触发一次

3.计时器方法

1):一次性计时器

A):setTimeout(): 指定的延迟时间之后来执行代码,进执行一次

语法:setTimeout(代码,延迟时间);

参数说明:

1. 要调用的函数或要执行的代码串。
2. 延时时间:在执行代码前需等待的时间,以毫秒为单位(1s=1000ms)。

B):clearTimeout():取消setTimeout()设置

语法:clearTimeout(timer)

参数说明:
timer:由 setTimeout() 返回的 ID 值。该值标识要取消的延迟执行代码块。

调用setTimeout()和clearTimeout()延迟方法:

复制代码 代码如下:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>JavaScript计时器</title>
        <input type="button" value="开始" id="btnStart" onclick="StartPrint()">
        <input type="button" value="暂停" id="btnStop" onclick="StopPrint()">
        <br>
    </head>
    <body>
        <script type="text/javascript">
            //定义打印方法
            function Print()
            {
                console.log("我在打印!");
            }
            var timer;//该值标识要取消的延迟执行代码块
            //开始打印
            function StartPrint()
            {
                timer=setTimeout(Print,1000);//调用计时器,延迟1秒打印,只执行一次
            }
            //结束打印
            function StopPrint()
            {
                clearTimeout(timer);//取消计时器
            }
        </script>
    </body>
</html>

调用setTimeout()和clearTimeout()无限循环方法:

复制代码 代码如下:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>JavaScript计时器</title>
        <input type="button" value="开始" id="btnStart" onclick="StartPrint()">
        <input type="button" value="暂停" id="btnStop" onclick="StopPrint()">
        <br>
    </head>
    <body>
        <script type="text/javascript">
            //定义打印方法
            function Print()
            {
                console.log("我在打印!");
                timer=setTimeout(Print,1000);//开始计时器,调用自己,进行无穷循环
            }
            var timer;//该值表示要取消延迟执行的代码块
            //开始打印
            function StartPrint()
            {
                Print();//调用打印方法
            }
            //结束打印
            function StopPrint()
            {
                clearTimeout(timer);//取消计时器
            }
        </script>
    </body>
</html>

 
2):间隔性触发计时器

A):setInterval():在执行时,从载入页面后每隔指定的时间执行代码

语法:setInterval(代码,交互时间);

参数说明:

1. 代码:要调用的函数或要执行的代码串。

2. 交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms)。

返回值:

一个可以传递给 clearInterval() 从而取消对"代码"的周期性执行的值。

调用函数格式(假设有一个clock()函数):

setInterval("clock()",1000) 或 setInterval(clock,1000)

B):clearInterval() 方法可取消由 setInterval() 设置的交互时间

语法:clearInterval(timer)

参数说明:
timer:由 setInterval() 返回的 ID 值。

调用setInterval()和clearInterval() 执行间隔执行方法实例

复制代码 代码如下:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>JavaScript计时器</title>
        <input type="button" value="开始" id="btnStart" onclick="StartPrint()">
        <input type="button" value="暂停" id="btnStop" onclick="StopPrint()">
        <br>
    </head>
    <body>
        <script type="text/javascript">
            //定义打印方法
            function Print()
            {
                console.log("我在打印!");
            }
            var timer;//该值标识要取消的计时器执行代码块
            //开始打印
            function StartPrint()
            {
            timer=setInterval("Print()",1000);//开始计时器
            }
            //结束打印
            function StopPrint()
            {
                clearInterval(timer);;//取消计时器
            }
        </script>
    </body>
</html>

以上就是本文所述的全部内容了,希望小伙伴们能够喜欢。

上一篇:浅谈JavaScript中Date(日期对象),Math对象
下一篇:编写自己的jQuery提示框(Tip)插件
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 站点导航 SiteMap