在网页制作动态效果时,一定会遇到某些需求,要求某段程序等待多时时间后再开始执行,就像在我们的生活中一样,待会儿再开始做一件事。在JavaScript中主要通过定时器实现此类需求,本文将对定时器做一个概括,正对setTimeout()做一个详细用法总结。
setTimeout()定义和用法
首先让我们看一看W3C上关于setTimeout方法的介绍
定义
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。
语法
setTimeout(code,millisec)
参数:
code:必需。要调用的函数后要执行的 JavaScript代码串。
millisec: 必需。在执行代码前需等待的毫秒数。
提示
setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。
代码
1
2
3
4
5
6
7
|
function hello(){ alert( "hello" ); } //使用方法名字执行方法 var t1 = window.setTimeout(hello,1000); var t2 = window.setTimeout( "hello()" ,3000); //使用字符串执行方法 window.clearTimeout(t1); //清除定时器 |
setInterval()定义和用法
代码
1
2
3
4
5
6
|
//实时刷新时间单位为毫秒 setInterval( 'refreshQuery()' ,8000); /* 刷新查询 */ function refreshQuery(){ $( "#mainTable" ).datagrid( 'reload' , null ); } |
业务场景
- setTimeout用于延迟执行某方法或功能
- setInterval则一般用于刷新表单,对于一些表单的假实时指定时间刷新同步