JavaScript 計時

通過使用 JavaScript,我們有能力做到在一個設定的時間間隔之後來執行代碼,而不是在函數被調用後立即執行。我們稱之爲計時事件。

JavaScript 計時事件

通過使用 JavaScript,我們有能力作到在一個設定的時間間隔之後來執行代碼,而不是在函數被調用後立即執行。我們稱之爲計時事件。

在 JavaScritp 中使用計時事件是很容易的,兩個關鍵方法是:

setTimeout()
未來的某時執行代碼
clearTimeout()
取消setTimeout()

setTimeout()

語法

var t=setTimeout("javascript語句",毫秒)

setTimeout() 方法會返回某個值。在上面的語句中,值被儲存在名爲 t 的變量中。假如你希望取消這個 setTimeout(),你可以使用這個變量名來指定它。

setTimeout() 的第一個參數是含有 JavaScript 語句的字符串。這個語句可能諸如 "alert('5 seconds!')",或者對函數的調用,諸如 alertMsg()"。

第二個參數指示從當前起多少毫秒後執行第一個參數。

提示:1000 毫秒等於一秒。

實例

當下面這個例子中的按鈕被點擊時,一個提示框會在5秒中後彈出。

<html> 
<head> 
<script type="text/javascript"> 
function timedMsg() 
 { 
 var t=setTimeout("alert('5 seconds!')",5000) 
 } 
</script> 
</head> 

<body> 
<form> 
<input type="button" value="Display timed alertbox!" onClick="timedMsg()"> 
</form> 
</body> 
</html>

實例 - 無窮循環

要創建一個運行於無窮循環中的計時器,我們需要編寫一個函數來調用其自身。在下面的例子中,當按鈕被點擊後,輸入域便從 0 開始計數。

<html> 

<head> 
<script type="text/javascript"> 
var c=0 
var t 
function timedCount() 
 { 
 document.getElementById('txt').value=c 
 c=c+1 
 t=setTimeout("timedCount()",1000) 
 } 
</script> 
</head> 

<body> 
<form> 
<input type="button" value="Start count!" onClick="timedCount()"> 
<input type="text" id="txt"> 
</form> 
</body> 

</html>

clearTimeout()

語法

clearTimeout(setTimeout_variable)

實例

下面的例子和上面的無窮循環的例子相似。唯一的不同是,現在我們添加了一個 "Stop Count!" 按鈕來停止這個計數器:

<html> 

<head> 
<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> 

<body> 
<form> 
<input type="button" value="Start count!" onClick="timedCount()"> 
<input type="text" id="txt"> 
<input type="button" value="Stop count!" onClick="stopCount()"> 
</form> 
</body> 

</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章