定义和用法
setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。
setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。
setInterval(code,millisec[,"lang"])
参数 描述
code 必需。要调用的函数或要执行的代码串。
millisec 必须。周期性执行或调用 code 之间的时间间隔,以毫秒计。
一个可以传递给 Window.clearInterval() 从而取消对 code 的周期性执行的值。
2,HTML DOM clearInterval()方法
定义和用法
clearInterval() 方法可取消由 setInterval() 设置的 timeout。
clearInterval() 方法的参数必须是由 setInterval() 返回的 ID 值。
clearInterval(id_of_setinterval)
参数 描述
id_of_setinterval 由 setInterval() 返回的 ID 值。
如何停止:
下面这个例子将每隔 50 毫秒调用 clock() 函数。您也可以使用一个按钮来停止这个 clock:
<input type="text" id="clock" size="35" />
<script language=javascript>
var int=self.setInterval("clock()",50)
function clock()
var t=new Date()
document.getElementById("clock").value=t
</script>
</form>
<button οnclick="int=window.clearInterval(int)">
Stop interval</button>
</body>
</html>
再来了解 setTimeout :
1,HTML DOM setTimeout() 方法
定义和用法
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。
setTimeout(code,millisec)
参数 描述
code 必需。要调用的函数后要执行的 JavaScript 代码串。
millisec 必需。在执行代码前需等待的毫秒数。
提示和注释
提示:setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。
实例,这个例子,在你点击按钮 5 秒钟后会弹出一个提示框:
<script type="text/javascript">
function timedMsg()
var t=setTimeout("alert('5 seconds!')",5000)
</script>
</head>
<input type="button" value="Display timed alertbox!"
onClick="timedMsg()">
</form>
<p>Click on the button above. An alert box will be
displayed after 5 seconds.</p>
</body>
</html> 2,HTML DOM clearTimeout() 方法
定义和用法clearTimeout() 方法可取消由 setTimeout() 方法设置的 timeout。语法clearTimeout(id_of_settimeout)
参数 描述
id_of_setinterval 由 setTimeout() 返回的 ID 值。该值标识要取消的延迟执行代码块。
实例下面的例子每秒调用一次 timedCount() 函数。您也可以使用一个按钮来终止这个定时消息:
<script type="text/javascript">
var c=0
var t
function timedCount()
document.getElementById('txt').value=c
c=c+1
t=setTimeout("timedCount()",1000)
function stopCount()
clearTimeout(t)
</script>
</head>
<input type="button" value="Start count!" onClick="timedCount()">
<input type="text" id="txt">
<input type="button" value="Stop count!" onClick="stopCount()">
</form>
</body>
</html>
先来了解 setInterval : 1,HTML DOM setInterval() 方法 定义和用法 setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。 setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval(
语法规范:window.
setTimeout
(调用函数,[延迟的毫秒数])
①window在调用的时候可以省略
setTimeout
( )
方法
用于设置一个定时器,该定时器在定时器到期后执行调用函数。
setTimeout
(function(){
console.log('时间到了')
},2000)
②这个延迟时间单位是毫秒 但是可以省略,如果省略默认的是0
③这个调用函数可以直接写函数 还可以写 函数名 还有一个写法 ‘函数名()’【不太建议】
//直接写函数
setTimeout
和
setInterval
的语法相同。它们都有两个参数,一个是将要执行的代码字符串,还有一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将执行那段代码。不过这两个函数还是有区别的,
setInterval
在执行完一次代码之后,经过了那个固定的时间间隔,它还会自动重复执行代码,而
setTimeout
只执行一次那段代码。区别:window.
setTimeout
(“function”,time);//设置一个超时对象,只执行一次,无周期 window.
setInterval
(“function”,time);//设置一个超时对象,周期=’交互时间’
停止
定时: window.cle
1.1 开启Timeout程序: scope.
setTimeout
("functionName()" | functionHandle, timeValue) 返回值:timerID
1.2 关闭Timeout程序: scope.clearTimeout(timerID);
2.1 开启Interval程序:scope.
setInterval
("functionName()...
经过测试发现alert会中断
settimeout
的计时功能,关闭对话框后,
settimeout
的时间会重头开始计时,而不是从中断处。
比如:
settimeout
定时5分钟后执行某
方法
,但是在等待3分钟后,弹出了alert,关闭alert后,
settimeout
会重头开始计时,再等5分钟,而不是2分钟。
并且只要是同一浏览器窗口内,即使在不同frame中,alert也会中断其他frame中的se
显然我对
setInterval
()的认识不足,这并不是一个需要反复调用的
方法
,实际上,
setInterval
()只需要调用一次就会无限调用/*我早该意识到这一点的*/
setInterval
和
setTimeout
都是 JavaScript 中的定时器函数,它们都可以用来在特定的时间间隔后执行某个函数。
setInterval
会在指定的时间间隔内不断重复执行某个函数,直到调用 clearInterval
方法
来
停止
。
setTimeout
则只会在指定的时间间隔后执行一次函数。
举个例子,
setInterval
可以用来制作一个时钟,每秒钟刷新一次时间,而
setTimeout
则可以在用户点击按钮后过3s后跳转页面。
jgsu_edu: