JavaScript计时器示例分析


Posted in Javascript onFebruary 05, 2015

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 相关文章推荐
javascript prototype 原型链
Mar 12 Javascript
JS获取IP、MAC和主机名的五种方法
Nov 14 Javascript
jquery交替变换颜色的三种方法 实例代码
Nov 19 Javascript
JavaScript代码应该放在HTML代码哪个位置比较好?
Oct 16 Javascript
JavaScript中的this机制
Jan 30 Javascript
laypage分页控件使用实例详解
May 19 Javascript
深入理解bootstrap框架之第二章整体架构
Oct 09 Javascript
jQuery基于ajax方式实现用户名存在性检查功能示例
Feb 10 Javascript
boostrap模态框二次弹出清空原有内容的方法
Aug 10 Javascript
代码实例ajax实现点击加载更多数据图片
Oct 12 Javascript
在Web关闭页面时发送Ajax请求的实现方法
Mar 07 Javascript
node.js制作一个简单的登录拦截器
Feb 10 Javascript
编写自己的jQuery提示框(Tip)插件
Feb 05 #Javascript
使用pjax实现无刷新更改页面url
Feb 05 #Javascript
BOOTSTRAP时间控件显示在模态框下面的bug修复
Feb 05 #Javascript
jquery手风琴特效插件
Feb 04 #Javascript
Jquery中find与each方法用法实例
Feb 04 #Javascript
javascript中Array数组的迭代方法实例分析
Feb 04 #Javascript
AngularJs根据访问的页面动态加载Controller的解决方案
Feb 04 #Javascript
You might like
聊天室php&amp;mysql(六)
2006/10/09 PHP
PHP_MySQL教程-第一天
2007/03/18 PHP
打造超酷的PHP数据饼图效果实现代码
2011/11/23 PHP
thinkPHP实现的联动菜单功能详解
2017/05/05 PHP
图片动画横条广告带上下滚动可自定义图片、链接等等
2013/10/20 Javascript
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
2014/04/29 Javascript
JS实现的表格操作类详解(添加,删除,排序,上移,下移)
2015/12/22 Javascript
深入解析AngularJS框架中$scope的作用与生命周期
2016/03/05 Javascript
jquery弹出遮掩层效果【附实例代码】
2016/04/28 Javascript
静态页面html中跳转传值的JS处理技巧
2016/06/22 Javascript
详解微信小程序开发之——wx.showToast(OBJECT)的使用
2017/01/18 Javascript
vue-router:嵌套路由的使用方法
2017/02/21 Javascript
深入探究angular2 UI组件之primeNG用法
2017/07/26 Javascript
深入理解Node.js中通用基础设计模式
2017/09/19 Javascript
node.js读取Excel数据(下载图片)的方法示例
2018/08/02 Javascript
vue接入腾讯防水墙代码
2019/05/07 Javascript
JavaScript定时器设置、使用与倒计时案例详解
2019/07/08 Javascript
python使用psutil模块获取系统状态
2016/08/27 Python
使用Python实现跳帧截取视频帧
2019/05/31 Python
Python面向对象中类(class)的简单理解与用法分析
2020/02/21 Python
matlab中二维插值函数interp2的使用详解
2020/04/22 Python
pandas的resample重采样的使用
2020/04/24 Python
python 实现围棋游戏(纯tkinter gui)
2020/11/13 Python
CSS3制作苹果风格键盘特效
2015/02/26 HTML / CSS
HTML5 虚拟键盘出现挡住输入框的解决办法
2017/02/14 HTML / CSS
英国知名的皮手套品牌:Dents
2016/11/13 全球购物
全球性的在线时尚男装零售商:boohooMAN
2016/12/17 全球购物
英语专业学生个人求职信范文
2014/01/06 职场文书
请假条怎么写
2014/04/10 职场文书
社区平安建设方案
2014/05/25 职场文书
大学生志愿者活动总结
2014/06/27 职场文书
爱心捐赠活动简讯
2015/07/20 职场文书
认识实习感想
2015/08/10 职场文书
pandas中DataFrame检测重复值的实现
2021/05/26 Python
python实现简单的聊天小程序
2021/07/07 Python
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js