实例讲解JavaScript 计时事件


Posted in Javascript onJuly 04, 2020

JavaScript 计时事件

通过使用 JavaScript,我们有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。我们称之为计时事件。

在 JavaScritp 中使用计时事件是很容易的,两个关键方法是:

  • setInterval() - 间隔指定的毫秒数不停地执行指定的代码。
  • setTimeout() - 在指定的毫秒数后执行指定代码。

注意: setInterval() 和 setTimeout() 是 HTML DOM Window对象的两个方法。

setInterval() 方法

setInterval() 间隔指定的毫秒数不停地执行指定的代码

语法

window.setInterval("javascript function",milliseconds);

window.setInterval() 方法可以不使用 window 前缀,直接使用函数 setInterval()。

setInterval() 第一个参数是函数(function)。

第二个参数间隔的毫秒数

注意: 1000 毫秒是一秒。

setInterval(function(){alert("Hello")},3000);

效果如下:

实例讲解JavaScript 计时事件

实例展示了如何使用 setInterval() 方法,但是每三秒弹出一次对用户体验并不好。

以下实例将显示当前时间。 setInterval() 方法设置每秒钟执行一次代码,就是手表一样。

var myVar=setInterval(function(){myTimer()},1000);
 
function myTimer()
{
  var d=new Date();
  var t=d.toLocaleTimeString();
  document.getElementById("demo").innerHTML=t;
}

效果如下:

实例讲解JavaScript 计时事件

如何停止执行?

clearInterval() 方法用于停止 setInterval() 方法执行的函数代码。

语法

window.clearInterval(intervalVariable)

window.clearInterval() 方法可以不使用window前缀,直接使用函数clearInterval()。

要使用 clearInterval() 方法, 在创建计时方法时你必须使用全局变量:

myVar=setInterval("javascript function",milliseconds);

然后你可以使用 clearInterval() 方法来停止执行。

以下例子,我们添加了 "停止" 按钮:

<p id="demo"></p>
<button onclick="myStopFunction()">停止</button>
<script>
var myVar=setInterval(function(){myTimer()},1000);
function myTimer(){
  var d=new Date();
  var t=d.toLocaleTimeString();
  document.getElementById("demo").innerHTML=t;
}
function myStopFunction(){
  clearInterval(myVar);
}
</script>

效果如下:

实例讲解JavaScript 计时事件

setTimeout() 方法

语法

myVar= window.setTimeout("javascript function", milliseconds);

setTimeout() 方法会返回某个值。在上面的语句中,值被储存在名为 myVar 的变量中。假如你希望取消这个 setTimeout(),你可以使用这个变量名来指定它。

setTimeout() 的第一个参数是含有 JavaScript 语句的字符串。这个语句可能诸如 "alert('5 seconds!')",或者对函数的调用,诸如 alertMsg。

第二个参数指示从当前起多少毫秒后执行第一个参数。

提示:1000 毫秒等于一秒。

实例

等待3秒,然后弹出 "Hello":

setTimeout(function(){alert("Hello")},3000);

效果如下:

实例讲解JavaScript 计时事件

如何停止执行?

clearTimeout() 方法用于停止执行setTimeout()方法的函数代码。

语法

window.clearTimeout(timeoutVariable)

window.clearTimeout() 方法可以不使用window 前缀。

要使用clearTimeout() 方法, 你必须在创建超时方法中(setTimeout)使用全局变量:

myVar=setTimeout("javascript function",milliseconds);

如果函数还未被执行,你可以使用 clearTimeout() 方法来停止执行函数代码。

实例

以下是同一个实例, 但是添加了 "Stop the alert" 按钮:

var myVar;
 
function myFunction()
{
  myVar=setTimeout(function(){alert("Hello")},3000);
}
 
function myStopFunction()
{
  clearTimeout(myVar);
}

效果如下:

实例讲解JavaScript 计时事件

以上就是实例讲解JavaScript 计时事件的详细内容,更多关于JavaScript 计时事件的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
JS图片根据鼠标滚动延时加载的实例代码
Jul 13 Javascript
跟我学习javascript的闭包
Nov 16 Javascript
浅析jQuery Mobile的初始化事件
Dec 03 Javascript
Listloading.js移动端上拉下拉刷新组件
Aug 04 Javascript
javascript笔记之匿名函数和闭包
Feb 06 Javascript
jQuery弹出窗口简单实现代码
Mar 09 Javascript
JS闭包原理与应用经典示例
Dec 20 Javascript
js全屏事件fullscreenchange 实现全屏、退出全屏操作
Sep 17 Javascript
node创建Vue项目步骤详解
Mar 06 Javascript
JavaScript鼠标悬停事件用法解析
May 15 Javascript
JavaScript经典案例之简易计算器
Aug 24 Javascript
浅谈node.js中间件有哪些类型
Apr 29 Javascript
vue实现导航菜单和编辑文本的示例代码
Jul 04 #Javascript
详解Vue.js 响应接口
Jul 04 #Javascript
JavaScript中数组去重的5种方法
Jul 04 #Javascript
JS制作简易计算器的实例代码
Jul 04 #Javascript
基于原生js实现九宫格算法代码实例
Jul 03 #Javascript
JavaScript DOM常用操作代码汇总
Jul 03 #Javascript
JavaScript缺少insertAfter解决方案
Jul 03 #Javascript
You might like
PHP中new static() 和 new self() 的区别介绍
2015/01/09 PHP
PHP实现搜索相似图片
2015/09/22 PHP
thinkphp的dump函数无输出实例代码
2016/11/15 PHP
Laravel框架集合用法实例浅析
2020/05/14 PHP
JS实现打开本地文件或文件夹
2021/03/09 Javascript
火狐浏览器(firefox)下获得Event对象以及keyCode
2008/11/13 Javascript
jquery 入门教程 [翻译] 推荐
2009/08/17 Javascript
jquery实现带复选框的表格行选中删除时高亮显示
2013/08/01 Javascript
setTimeout和setInterval的深入理解
2013/11/08 Javascript
jquery中show()、hide()和toggle()用法实例
2015/01/15 Javascript
用JavaScript判断CSS浏览器类型前缀的两种方法
2015/10/08 Javascript
Vue如何实现组件的源码解析
2017/06/08 Javascript
JavaScript执行环境及作用域链实例分析
2018/08/01 Javascript
解决vue router组件状态刷新消失的问题
2018/08/01 Javascript
基于element-ui的rules中正则表达式
2018/09/04 Javascript
微信小程序如何连接Java后台
2019/08/08 Javascript
[04:17]DOTA2完美盛典,rOtk、BurNIng携手巴图演唱《倔强》
2017/11/28 DOTA
Python读写配置文件的方法
2015/06/03 Python
常用python编程模板汇总
2016/02/12 Python
python TCP Socket的粘包和分包的处理详解
2018/02/09 Python
Python中字符串String的基本内置函数与过滤字符模块函数的基本用法
2019/05/27 Python
python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法
2019/06/26 Python
如何用Python来理一理红楼梦里的那些关系
2019/08/14 Python
python多环境切换及pyenv使用过程详解
2019/09/27 Python
Pycharm最新激活码2019(推荐)
2019/12/31 Python
Transpose 数组行列转置的限制方式
2020/02/11 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
2020/02/27 Python
Python函数生成器原理及使用详解
2020/03/12 Python
Python 代码调试技巧示例代码
2020/08/11 Python
详解python tkinter包获取本地绝对路径(以获取图片并展示)
2020/09/04 Python
Python爬虫新手入门之初学lxml库
2020/12/20 Python
英智兴达软件测试笔试题
2016/10/12 面试题
电话客服工作职责
2014/07/27 职场文书
2019大学生暑期实习心得总结
2019/08/21 职场文书
Python 多线程之threading 模块的使用
2021/04/14 Python
Mysql中mvcc各场景理解应用
2022/08/05 MySQL