JavaScript 計時事件
JavaScript 計時事件
123456789101112 | JavaScript 一個設定的時間間隔之後來執行代碼我們稱之為計時事件 |
JavaScript 計時事件
通過使用 JavaScript,我們有能力作到在一個設定的時間間隔之後來執行代碼,而不是在函數被調用後立即執行。我們稱之為計時事件。
在 JavaScritp 中使用計時事件是很容易的,兩個關鍵方法是:
setInterval() - 間隔指定的毫秒數不停地執行指定的代碼。
setTimeout() - 暫停指定的毫秒數後執行指定的代碼
Note: setInterval() 和 setTimeout() 是 HTML DOM Window對象的兩個方法。
setInterval() 方法
setInterval() 間隔指定的毫秒數不停地執行指定的代碼
語法
window.setInterval("javascript function",milliseconds);
window.setInterval() 方法可以不使用window前綴,直接使用函數setInterval()。
setInterval() 第一個參數是函數(function)。
第二個參數間隔的毫秒數
注意: 1000 毫秒是一秒。
實例
每三秒彈出 "hello" :
setInterval(function(){alert("Hello")},3000);
實例展示了如何使用 setInterval() 方法,但是每三秒彈出一次對用戶體驗並不好。
以下實例將顯示當前時間。 setInterval() 方法設置每秒鐘執行一次代碼,就是手錶一樣。
實例
顯示當前時間
var myVar=setInterval(function(){myTimer()},1000);
function myTimer()
{
var d=new Date();
var t=d.toLocaleTimeString();
document.getElementById("demo").innerHTML=t;
}
如何停止執行?
clearInterval() 方法用於停止 setInterval() 方法執行的函數代碼。
語法
window.clearInterval(intervalVariable)
window.clearInterval() 方法可以不使用window前綴,直接使用函數clearInterval()。
要使用 clearInterval() 方法, 在創建計時方法時你必須使用全局變數:
myVar=setInterval("javascript function",milliseconds);
然後你可以使用clearInterval() 方法來停止執行。
實例
以下例子,我們添加了 "Stop time" 按鈕:
var myVar=setInterval(function(){myTimer()},1000);
function myTimer()
{
var d=new Date();
var t=d.toLocaleTimeString();
document.getElementById("demo").innerHTML=t;
}
function myStopFunction()
{
clearInterval(myVar);
}
setTimeout() 方法
語法
window.setTimeout("javascript 函數",毫秒數);
setTimeout() 方法會返回某個值。在上面的語句中,值被儲存在名為 t 的變數中。假如你希望取消這個 setTimeout(),你可以使用這個變數名來指定它。
setTimeout() 的第一個參數是含有 JavaScript 語句的字元串。這個語句可能諸如 "alert("5 seconds!")",或者對函數的調用,諸如 alertMsg()"。
第二個參數指示從當前起多少毫秒後執行第一個參數。
提示:1000 毫秒等於一秒。
實例
等待3秒,然後彈出 "Hello":
setTimeout(function(){alert("Hello")},3000);
如何停止執行?
clearTimeout() 方法用於停止執行setTimeout()方法的函數代碼。
語法
window.clearTimeout(timeoutVariable)
window.clearTimeout() 方法可以不使用window 前綴。
要使用clearTimeout() 方法, 你必須在創建超時方法中(setTimeout)使用全局變數:
myVar=setTimeout("javascript function",milliseconds);
如果函數還未被執行,你可以使用 clearTimeout() 方法來停止執行函數代碼。
實例
以下是同一個實例, 但是添加了 "Stop the alert" 按鈕:
var myVar;
function myFunction()
{
myVar=setTimeout(function(){alert("Hello")},3000);
}
function myStopFunction()
{
clearTimeout(myVar);
}


※JavaScript編程 Cookie
※JavaScript RegExp 對象
※JavaScript Window-瀏覽器對象模型
※JavaScript 編程Window Screen
TAG:程序員小新人學習 |
※宇舶 Hublot 經典融合Berluti Scritto計時碼錶
※表現Cafe Racer的精神 真力時Pilot Type 20計時碼錶Ton Up特別版
※豪利時推出Divers Sixty-Five計時碼錶
※發售倒計時!你最愛的Virgil Abloh x Converse Chuck Taylor』70終於來了!
※發售倒計時!sacai x Nike LDV Waffle Daybreak官圖釋出!
※Piaget伯爵推出Polo S系列Bucherer Blue特別限量版計時碼錶
※高振頻與高性能的絕美展現:蕭邦Superfast Chrono Porsche 919 Black Edition計時腕錶
※TAG Heuer 泰格豪雅Carrera Calibre 16計時碼錶
※路易威登推出兩款全新Tambour Damier Cobalt計時碼錶
※Supreme x Tag Heuer 新傳聞泄露!聯名秒錶計時器或將發售
※沙魯遊戲倒計時!龍珠ZxadidasProphere「Cell」實物欣賞
※發售倒計時!女生專屬 Air Jordan 13 「Phantom」 官圖釋出!
※Falcom公布神秘新游「Project N.O.X」倒計時頁面
※Supreme 全新 Brooklyn 店開張倒計時2天!還有你們期待已久的 Box Logo Tee!
※Adobe Flash棄用倒計時!安全工具Flashmingo首度亮相
※Falcom官網倒計時《伊蘇9-Monstrum NOX》
※沛納海推出三款全新Luminor Yachts Challenge帆船挑戰賽特別版計時碼錶
※休閑商務風 積家Master Chronograph計時大師系列腕錶
※實物美照!Air Jordan 14 「Last Shot」 進入回歸倒計時!
※真力時Defy El Primero 21鑲鑽計時腕錶