JavaScript 一个设定的时间间隔之后来执行代码,称之为计时事件。
主要通过两个方法来实现:
1.setInterval() - 间隔指定的毫秒数不停地执行指定的代码。
2.setTimeout() - 暂停指定的毫秒数后执行指定的代码
并且,这两个方法都是window对象的方法。
一、setInterval()方法
该方法值得是间隔一定的毫秒数不停的执行指定的代码。
语法:window.setInterval(”js代码,函数等“,毫秒数);
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>计时器-setInterval</title> </head> <body> <form> <input type="button" value="开始计数" onclick="start()" /> <input type="button" value="停止计数" onclick="stop()" /> </form> <div id="div2"></div> <script type="text/javascript"> var a=0; var timer = null; function start(){ timer = setInterval(function(){ a ++; document.getElementById("div2").innerHTML = "计数:"+a; },1000); } function stop(){ clearInterval(timer); } </script> </body> </html>
二、setTimeout()方法
指的是指定的毫秒数后执行指定的代码或方法。
语法:window.setTimeout("javascript 函数",毫秒数);
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>计时器-setTimeout</title> </head> <body> <form> <input type="button" value="三秒后执行" onclick="count()" /><br /><br /> </form> <div id="div1"></div> <hr /> <form> <input type="button" value="开始计数" onclick="start()" /> <input type="button" value="停止计数" onclick="stop()" /><br /><br /> </form> <div id="div2"></div> <script type="text/javascript"> function count(){ //setTimeout("alert('时间到了')",3000); setTimeout(function(){ hide(); },3000); } function hide(){ var div1 = document.getElementById('div1'); div1.innerHTML = "hello world"; div1.style.height = div1.offsetHeight+200+"px"; div1.style.background = "red"; } var a=0; var timer = null; function start(){ a += 1; document.getElementById("div2").innerHTML = "计数:"+a; timer = setTimeout("start();",1000); } function stop(){ clearTimeout(timer); } </script> </body> </html>
最后再强调:
setTimeout 在某个时间以后执行一个函数(只执行1次)
setInterval 让程序每个一定时间来调用函数1次
js-计时事件的更多相关文章
-
js计时事件
通过在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行,我们称之为计时事件. 1. setTimeout()--暂停指定的时间后执行指定的代码 clearTimeout ()--停止se ...
-
js的事件循环机制:同步与异步任务(setTimeout,setInterval)宏任务,微任务(Promise,process.nextTick)
javascript是单线程,一切javascript版的"多线程"都是用单线程模拟出来的,通过事件循环(event loop)实现的异步. javascript事件循环 事件循环 ...
-
探讨Js的事件的冒泡阶段
近来看到了一个新的知识点叫Js的事件冒泡,因此决定自己来研究一番. 大家应该都知道,Js中的事件处理分为三个阶段,1:事件的捕获阶段,2:处于目标阶段,3:事件的冒泡阶段.那么什么是事件的捕获和冒泡呢 ...
-
浅谈js的事件冒泡机制
很多人都听说过,js的事件冒泡机制,其实,这个说法还是比较生动形象的,就是一个水泡在水底下,冒泡到水面的过程. 那js的事件冒泡机制呢,就是一个DOM树,一级一级向上冒的过程,最终是到document ...
-
js键盘事件全面控制详解
js键盘事件全面控制 主要分四个部分第一部分:浏览器的按键事件第二部分:兼容浏览器第三部分:代码实现和优化第四部分:总结 第一部分:浏览器的按键事件 用js实现键盘记录,要关注浏览器的三种按键事件 ...
-
Js 冒泡事件阻止
Js 冒泡事件阻止 1. 事件目标 现在,事件处理程序中的变量event保存着事件对象.而event.target属性保存着发生事件的目标元素.这个属性是DOM API中规定的,但是没有被所有浏览 ...
-
js event 事件兼容浏览器 ie不需要 event参数 firefox 需要
js event 事件兼容浏览器 ie不需要 event参数 firefox 需要 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ...
-
JS通用事件监听函数
JS通用事件监听函数 版本一 //把它全部封装到一个对象中 var obj={ readyEvent:function (fn){ if(fn==null){ fn=document; } var o ...
-
js键盘事件全面控制
js键盘事件全面控制 主要分四个部分第一部分:浏览器的按键事件第二部分:兼容浏览器第三部分:代码实现和优化第四部分:总结 第一部分:浏览器的按键事件 用js实现键盘记录,要关注浏览器的三种按键事件类型 ...
-
js键盘事件全面控制详解【转】
js键盘事件全面控制 主要分四个部分第一部分:浏览器的按键事件第二部分:兼容浏览器第三部分:代码实现和优化第四部分:总结 第一部分:浏览器的按键事件 用js实现键盘记录,要关注浏览器的三种按键事件类型 ...
随机推荐
-
AFNetworking 3.0 源码解读(五)之 AFURLSessionManager
本篇是AFNetworking 3.0 源码解读的第五篇了. AFNetworking 3.0 源码解读(一)之 AFNetworkReachabilityManager AFNetworking 3 ...
-
分析DH加密算法,一种适基于密钥一致协议的加密算法。
DH Diffie-Hellman算法(D-H算法),密钥一致协议.是由公开密钥密码*的奠基人Diffie和Hellman所提出的一种思想.简单的说就是允许两名用户在公开媒体上交换信息以生成&quo ...
-
Jade之Plain Text
Plain Text jade提供了3种得到纯文本的方法. Piped Text 添加纯文本的一个最简单的方法就是在文本最前面加|符号即可. jade: p | It must always be o ...
-
注册asp.net
%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
-
Windows7(x64)下Oracle10g安装
安装环境:Windows7 (64位版本) + Oracle10g 问题描述1:无法启动安装程序,程序提示“程序异常终止.发生内部错误....” 解决过程:按网上说法加6.1版本参数,按xp兼容模式启 ...
-
OSS.Common获取枚举字典列表标准库支持
上篇(.Net Standard扩展支持实例分享)介绍了OSS.Common的标准库支持扩展,也列举了可能遇到问题的解决方案.由于时间有限,同时.net standard暂时还没有提供对Descrip ...
-
jmeter+maven+jenkins自动化接口测试(下)
maven+jmeter已经写好了,可以通过maven来执行jmeter的接口测试脚本,怎样实现定时执行测试并发送报告邮件就需要通过jenkins了(jmeter或者testng也可以结合不同的邮件j ...
-
配置错误 不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(overrideModeDefault=";Deny";),或者是通过包含 overrideMode=";Deny"; 或旧有的 allowOverride=";false"; 的位置标记明确设置的。
原因:可能是在安装IIS7的时候没有安装asp.net, 尝试使用以下方法: cmd.exe要以管理员身份启动,在c:\windows\system32下找到cmd.exe,右键管理员启动,输入命令 ...
-
12个必备的JavaScript装逼技巧
译者按: 无论你是初学者还是资深人士,都值得一读! 原文: 12 Amazing JavaScript Shorthand Techniques 译者: Fundebug 为了保证可读性,本文采用意译 ...
-
Symfony2 学习笔记之服务容器
现在的PHP应用程序都是面向对象开发,所以主要是由对象构成.有的对象可以方便的分发邮件信息而有的可能帮你把信息写入到数据库中.在你的应用程序中,你可能创建一个对象用于管理你的产品库存,或者另外一个对象 ...