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 相关文章推荐
jquery 表单下所有元素的隐藏
Jul 25 Javascript
在JS中如何调用JSP中的变量
Jan 22 Javascript
实例讲解javascript注册事件处理函数
Jan 09 Javascript
让浏览器崩溃的12行JS代码(DoS攻击分析及防御)
Oct 10 Javascript
JS实现图片高斯模糊切换效果的焦点图实例
Jan 21 Javascript
Django中使用jquery的ajax进行数据交互的实例代码
Oct 15 jQuery
通过一次报错详细谈谈Point事件
May 17 Javascript
vue 2.8.2版本配置刚进入时候的默认页面方法
Sep 21 Javascript
Vue.js 使用v-cloak后仍显示变量的解决方法
Nov 19 Javascript
小程序实现层叠卡片滑动效果
Aug 26 Javascript
详解React的回调渲染模式
Sep 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之Smarty入门
2007/01/04 PHP
PHP GD 图像处理组件的常用函数总结
2010/04/28 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
ext combox 下拉框不出现自动提示,自动选中的解决方法
2010/02/24 Javascript
jQuery源码分析-01总体架构分析
2011/11/14 Javascript
Extjs4 消息框去掉关闭按钮(类似Ext.Msg.alert)
2013/04/02 Javascript
js创建元素(节点)示例
2014/01/02 Javascript
js实现局部页面打印预览原理及示例代码
2014/07/03 Javascript
jquery中append()与appendto()用法分析
2014/11/14 Javascript
JS实现图片放大镜效果的方法
2015/02/27 Javascript
js实现仿百度汽车频道选择汽车图片展示实例
2015/05/06 Javascript
判断js的Array和Object的实现方法
2016/08/29 Javascript
jQuery实现基本隐藏与显示效果的方法详解
2018/09/05 jQuery
在Vue项目中,防止页面被缩放和放大示例
2019/10/28 Javascript
python 示例分享---逻辑推理编程解决八皇后
2014/07/20 Python
使用python3.5仿微软记事本notepad
2016/06/15 Python
python 链接和操作 memcache方法
2017/03/04 Python
Python使用plotly绘制数据图表的方法
2017/07/18 Python
对numpy中轴与维度的理解
2018/04/18 Python
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
python3+PyQt5使用数据库表视图
2018/04/24 Python
Python基于机器学习方法实现的电影推荐系统实例详解
2019/06/25 Python
PyCharm中代码字体大小调整方法
2019/07/29 Python
matplotlib实现显示伪彩色图像及色度条
2019/12/07 Python
pytorch 中pad函数toch.nn.functional.pad()的用法
2020/01/08 Python
python3+opencv生成不规则黑白mask实例
2020/02/19 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
Python word文本自动化操作实现方法解析
2020/11/05 Python
CSS3 清除浮动的方法示例
2018/06/01 HTML / CSS
小溪流的歌教学反思
2014/02/13 职场文书
物流管理专业毕业生求职信
2014/03/23 职场文书
放飞梦想演讲稿
2014/05/05 职场文书
2015年保安个人工作总结
2015/04/02 职场文书
python简单验证码识别的实现过程
2021/06/20 Python
k8s部署redis cluster集群的实现
2021/06/24 Redis
常用的MongoDB查询语句的示例代码
2021/07/25 MongoDB