JavaScript 計時
通過使用 JavaScript,我們有能力做到在一個設定的時間間隔之后來執行代碼,而不是在函數被調用后立即執行。我們稱之為計時事件。
實例
- 簡單的計時
- 單擊本例中的按鈕后,會在 5 秒后彈出一個警告框。
- 另一個簡單的計時
- 本例中的程序會執行 2 秒、4 秒和 6 秒的計時。
- 在一個無窮循環中的計時事件
- 在本例中,單擊開始計時按鈕后,程序開始從 0 以秒計時。
- 帶有停止按鈕的無窮循環中的計時事件
- 在本例中,點擊計數按鈕后根據用戶輸入的數值開始倒計時,點擊停止按鈕停止計時。
- 使用計時事件制作的鐘表
- 一個 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+1t=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>
posted on 2014-04-01 14:36 順其自然EVO 閱讀(218) 評論(0) 編輯 收藏 所屬分類: js