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 相关文章推荐
Valerio 发布了 Mootools
Sep 23 Javascript
javascript 获取select下拉列表值的代码
Sep 07 Javascript
Js event事件在IE、FF兼容性问题
Jan 01 Javascript
getElementByIdx_x js自定义getElementById函数
Jan 24 Javascript
jQuery Masonry瀑布流插件使用详解
Nov 17 Javascript
jQuery使用$.ajax进行即时验证的方法
Dec 08 Javascript
使用Ajax与服务器(JSON)通信实例
Nov 04 Javascript
Angular2开发——组件规划篇
Mar 28 Javascript
浅谈Vue的加载顺序探讨
Oct 25 Javascript
深入理解node.js http模块
Jan 24 Javascript
vue页面切换到滚动页面显示顶部的实例
Mar 13 Javascript
javascript移动端 电子书 翻页效果实现代码
Sep 07 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
神族 Protoss 剧情介绍
2020/03/14 星际争霸
php实现smarty模板无限极分类的方法
2015/12/07 PHP
yii2带搜索功能的下拉框实例详解
2016/05/12 PHP
php基于PDO连接MSSQL示例DEMO
2016/07/13 PHP
thinkphp整合系列之极验滑动验证码geetest功能
2019/06/18 PHP
phpstorm激活码2020附使用详细教程
2020/09/25 PHP
基于jquery循环map功能的代码
2011/02/26 Javascript
jQuery 源码分析笔记(2) 变量列表
2011/05/28 Javascript
js 编码转换 gb2312 和 utf8 互转的2种方法
2013/08/07 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
2013/10/21 Javascript
jquery遍历select元素(实例讲解)
2013/12/31 Javascript
基于JavaScript实现动态创建表格和增加表格行数
2015/12/20 Javascript
快速掌握Node.js事件驱动模型
2016/03/21 Javascript
JavaScript 控制字体大小设置的方法
2016/11/23 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
Js利用正则表达式去除字符串的中括号
2020/11/23 Javascript
[02:33]2014DOTA2 TI每日综述 LGD涉险晋级DK闯入胜者组
2014/07/14 DOTA
python 切片和range()用法说明
2013/03/24 Python
Python实现的一个简单LRU cache
2014/09/26 Python
调试Python程序代码的几种方法总结
2015/04/28 Python
Python构建XML树结构的方法示例
2017/06/30 Python
python中MethodType方法介绍与使用示例
2017/08/03 Python
Django框架组成结构、基本概念与文件功能分析
2019/07/30 Python
如何利用Python开发一个简单的猜数字游戏
2019/09/22 Python
numpy 声明空数组详解
2019/12/05 Python
Python猴子补丁Monkey Patch用法实例解析
2020/03/23 Python
pytorch加载语音类自定义数据集的方法教程
2020/11/10 Python
荷兰多品牌网上鞋店:Stoute Schoenen
2017/08/24 全球购物
澳大利亚家具和家居用品在线商店:Interiors Online
2018/03/05 全球购物
民族学专业求职信
2014/07/28 职场文书
简单租房协议书范本
2014/08/20 职场文书
通知的格式范文
2015/04/27 职场文书
卫生保健工作总结2015
2015/05/18 职场文书
Pytest allure 命令行参数的使用
2021/04/18 Python
一篇文章看懂MySQL主从复制与读写分离
2021/11/07 MySQL
NGINX 权限控制文件预览和下载的实现原理
2022/01/18 Servers