天天看點

BOM:window對象的方法之定時器setTimeout()和停止setTimeout()定時器

window對象提供了兩個好用的方法:定時器,分别是:

- setTimeout()

- setInterval()

window.setTimeout(調用函數,[延遲的毫秒數]);

毫秒數如果不寫,預設是0,會立即執行。

setTimeout()方法用于設定一個定時器,該定時器在定時器設定的毫秒數到期後自動執行調用。

<script>
// window在調用時可以省略,直接寫setTimeout
setTimeout(function(){
	// 表示3秒後彈出
	alert(12);
},3000)
</script>
           

setTimeout參數中的函數可以直接寫函數,也可以寫函數名,如下所示:

setTimeout(callback,2000);
function callback(){
	alert(123);
}
           

另外頁面中可能會有很多的定時器,不止一個,是以經常給每個定時器起一個名字來區分(辨別符)。

<script>
var timer1 = setTimeout(callback,2000); // 定時器1
var timer2 = setTimeout(callback,3000); // 定時器2
function callback(){
	alert("hello");
}
</script>
           

停止setTimeout()定時器:

window.clearTimeout(定時器的辨別符);

<script>
var timer1 = setTimeout(callback,3000); // 定時器1
var timer2 = setTimeout(callback,5000); // 定時器2
function callback(){
	alert("hello"); // 執行的是定時器2
}
clearTimeout(timer1); // 停止定時器1
</script>
           

繼續閱讀