当前位置: 首页 > news >正文

JavaScript 计时事件

JavaScript 计时事件

在这里插入图片描述

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

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

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

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

计时器的四种方法:

1.setTimeout():指定的延迟时间之后来执行代码。

2.clearTimeout():取消setTimeout()设置。

3.setInterval():每隔指定的时间执行代码。

4.clearInterval():取消setInterval()设置。

setInterval():语法。

setInterval(代码,交互时间);

代码:要调用的函数或要执行的代码串。

交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms)。

(1).利用setInterval()做一个简易时间显示:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>定时器</title>
<script type="text/javascript">var attime;function clock(){var time=new Date();          attime= time.getHours() + ":" + time.getMinutes() + ":" + time.getSeconds();document.getElementById("clock").value = attime;}setInterval("clock()",1000)
</script>
</head>
<body>
<form>
<input type="text" id="clock" size="50"  />
</form>
</body>
</html>
如何停止执行?

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>

setTimeout():语法

setTimeout(代码,延迟时间);

代码:要调用的函数或要执行的代码串。 延时时间:在执行代码前需等待的时间,以毫秒为单位(1s=1000ms)。

(1)setTimeout()实现计数统计效果

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>计时器</title>
<script type="text/javascript">var num=0;function startCount() {document.getElementById('count').value=num;num=num+1;setTimeout("startCount()",1000); }setTimeout("startCount()",1000); 
</script>
</head>
<body>
<form>
<input type="text" id="count" />
</form>
</body>
</html>

取消计时器clearInterval()

clearInterval() 方法可取消由 setInterval() 设置的交互时间。

clearInterval(id_of_setInterval)

id_of_setInterval:由 setInterval() 返回的 ID 值。
每隔 100 毫秒调用 clock() 函数,并显示时间。当点击按钮时,停止时间,代码如下:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>计时器</title>
<script type="text/javascript">function clock(){var time=new Date();                     document.getElementById("clock").value = time;}
// 每隔100毫秒调用clock函数,并将返回值赋值给ivar i=setInterval("clock()",100);
</script>
</head>
<body><form><input type="text" id="clock" size="50"  /><input type="button" value="Stop" onclick="clearInterval(i)"  /></form>
</body>
</html>
http://www.lryc.cn/news/6487.html

相关文章:

  • 七大排序算法的多语言代码实现
  • 【基础算法】表达式计算
  • 动态规划问题
  • 【MySQL进阶】 存储引擎 索引
  • 5 款最好的免费 SSD 数据恢复软件
  • MyBatis案例 | 使用映射配置文件实现CRUD操作——删除数据
  • CSDN 编程竞赛二十八期题解
  • DML数据操纵语言
  • 【Hello Linux】Linux工具介绍 (gcc/g++ gdb)
  • TeamFiltration:一款针对O365 AAD账号安全的测试框架
  • 你是真的“C”——Visual Studio 2022(VS2022)编译器 -—实用调试技巧
  • 数据结构与算法:7种必须会的排序以及3种非基于比较排序
  • 数据库用户数
  • nginx如何用html显示多个图片并加入播放链接
  • 【蓝桥杯集训·每日一题】Acwing 3729. 改变数组元素
  • springmvc执行流程
  • SpringMVC(2)
  • Jackson序列化json时null转成空串或空对象
  • 如何将Python的上级目录的文件导入?【from.import】
  • Java实现碧蓝航线连续作战
  • Docker笔记
  • 情人节使用AI TOOL来创建一个甜言蜜语的女伴
  • G-GhostNet(IJCV 2022)原理与代码解析
  • Ethercat系列(5)TWcat3激活过程的协议分析(续1)
  • QT入门Input Widgets之QScrollBar
  • 【ML】基于机器学习的心脏病预测研究(附代码和数据集,多层感知机模型)
  • 工序排序问题--约翰逊法精讲
  • WebDAV之葫芦儿·派盘+网盘精灵
  • 计算机网络期末知识点总结
  • 【Vue3 组件封装】vue3 轮播图组件封装