在制作網(wǎng)頁動(dòng)態(tài)效果時(shí),一定會(huì)遇到某些需求,要求某段程序等待多時(shí)時(shí)間后再開始執(zhí)行,就像在我們的生活中一樣,待會(huì)兒再開始做一件事。在JavaScript中主要通過定時(shí)器實(shí)現(xiàn)此類需求,本文將對(duì)定時(shí)器做一個(gè)概括,正對(duì)setTimeout()做一個(gè)詳細(xì)用法總結(jié)。
setTimeout()定義和用法
首先讓我們看一看W3C上關(guān)于setTimeout方法的介紹
定義
setTimeout() 方法用于在指定的毫秒數(shù)后調(diào)用函數(shù)或計(jì)算表達(dá)式。
語法
setTimeout(code,millisec)
參數(shù):
code:必需。要調(diào)用的函數(shù)后要執(zhí)行的 JavaScript 代碼串。
millisec: 必需。在執(zhí)行代碼前需等待的毫秒數(shù)。
提示
setTimeout() 只執(zhí)行 code 一次。如果要多次調(diào)用,請(qǐng)使用 setInterval() 或者讓 code 自身再次調(diào)用 setTimeout()。
代碼
function hello(){
alert("hello");
}
//使用方法名字執(zhí)行方法
var t1 = window.setTimeout(hello,1000);
var t2 = window.setTimeout("hello()",3000);//使用字符串執(zhí)行方法
window.clearTimeout(t1);//清除定時(shí)器
setInterval()定義和用法
代碼
//實(shí)時(shí)刷新時(shí)間單位為毫秒
setInterval('refreshQuery()',8000);
/* 刷新查詢 */
function refreshQuery(){
$("#mainTable").datagrid('reload',null);
}
業(yè)務(wù)場(chǎng)景
setTimeout用于延遲執(zhí)行某方法或功能
setInterval則一般用于刷新表單,對(duì)于一些表單的假實(shí)時(shí)指定時(shí)間刷新同步