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对JSON进行模式匹配(Part 1-设计)
Jul 17 Javascript
jQuery 一个图片切换的插件
Oct 09 Javascript
javascript抖动元素的小例子
Oct 28 Javascript
三种检测iPhone/iPad设备方向的方法
Apr 23 Javascript
javascript实现动态模态绑定grid过程代码
Sep 22 Javascript
分享五个有用的jquery小技巧
Oct 08 Javascript
jQuery事件对象总结
Oct 17 Javascript
javascript 单例模式详解及简单实例
Feb 14 Javascript
详解vue过滤器在v2.0版本用法
Jun 01 Javascript
Angular实现下载安装包的功能代码分享
Sep 05 Javascript
详解Vue中使用Axios拦截器
Apr 22 Javascript
三步实现ionic3点击退出app程序
Sep 17 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用身份证号获取星座和生肖的方法
2013/11/07 PHP
php生成4位数字验证码的实现代码
2015/11/23 PHP
Laravel中Trait的用法实例详解
2016/03/16 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
2018/12/21 PHP
javascript之锁定表格栏位
2007/06/29 Javascript
JavaScript高级程序设计 读书笔记之十一 内置对象Global
2012/03/07 Javascript
JavaScript实现的GBK、UTF8字符串实际长度计算函数
2014/08/27 Javascript
javascript中$(function() {});写与不写有哪些区别
2015/08/10 Javascript
详解javascript new的运行机制
2016/01/26 Javascript
Jquery中map函数的用法
2016/06/03 Javascript
js判断请求的url是否可访问,支持跨域判断的实现方法
2016/09/17 Javascript
input file上传 图片预览功能实例代码
2016/10/25 Javascript
JavaScript实现经典排序算法之选择排序
2016/12/28 Javascript
Vue2.0中集成UEditor富文本编辑器的方法
2018/03/03 Javascript
关于vue中 $emit的用法详解
2018/04/12 Javascript
vue项目搭建以及全家桶的使用详细教程(小结)
2018/12/19 Javascript
JS数组扁平化(flat)方法总结详解
2019/06/24 Javascript
three.js着色器材质的内置变量示例详解
2020/08/16 Javascript
JavaScript实现简单日历效果
2020/09/11 Javascript
JS实现百度搜索框
2021/02/25 Javascript
Python编程之多态用法实例详解
2015/05/19 Python
使用Django连接Mysql数据库步骤
2019/01/15 Python
Python 3.8 新功能全解
2019/07/25 Python
基于Python绘制美观动态圆环图、饼图
2020/06/03 Python
使用html5 canvas 画时钟代码实例分享
2015/11/11 HTML / CSS
详解HTML5 录音的踩坑之旅
2017/12/26 HTML / CSS
世界汽车零件:World Car Parts
2019/09/04 全球购物
既然说Ruby中一切都是对象,那么Ruby中类也是对象吗
2013/01/26 面试题
妇产医师自荐信
2014/01/29 职场文书
教师节商场活动方案
2014/02/13 职场文书
高中微机老师自我鉴定
2014/02/16 职场文书
舞蹈兴趣小组活动总结
2014/07/07 职场文书
党的群众路线教育实践活动个人对照检查材料范文
2014/09/25 职场文书
评测 | 大屏显示带收音机的高端音箱,JBL TUNE2便携式插卡音箱实测
2021/04/24 无线电
python脚本框架webpy的url映射详解
2021/11/20 Python
图文详解nginx日志切割的实现
2022/01/18 Servers