您好,登錄后才能下訂單哦!
本篇內容介紹了“javascript的定時器有哪幾種”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
javascript里的定時器有兩種:1、單次定時器,使用setTimeout()方法定義,可以在規定時間(以毫秒計)過后執行一次代碼塊;2、循環定時器,使用setInterval()方法定義,按照指定的周期(以毫秒計)來重復執行某些代碼。
本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
在 JavaScript 中,我們可以利用定時器來延遲執行某些代碼,或者以固定的時間間隔重復執行某些代碼。例如,您可以使用定時器定時更新頁面中的廣告或者顯示一個實時的時鐘等。
JavaScript 中提供了兩種定時器:setTimeout() 和 setInterval()
方法 | 說明 |
---|---|
setTimeout() | 在指定的時間后(單位為毫秒),執行某些代碼,代碼只會執行一次 |
setInterval() | 按照指定的周期(單位為毫秒)來重復執行某些代碼,定時器不會自動停止,除非調用 clearInterval() 函數來手動停止或著關閉瀏覽器窗口 |
setTimeout()
JS setTimeout() 函數用來在指定時間后執行某些代碼,代碼僅執行一次。
使用方法:
setTimeout(code,millisec)
code 必需。要調用的函數后要執行的 JavaScript 代碼串。
millisec 必需。在執行代碼前需等待的毫秒數。
實例:
<html> <head> <meta charset="utf-8" /> </head> <body> <button id="button" onclick="click1()">獲取驗證碼</button> <span id="span"></span> <script> var time = 10; var num; var button = document.getElementById("button"); var span = document.getElementById("span"); function click1() { //click是關鍵字,所有函數名改為click1 if (time == 0) { button.disabled = false; time = 10; span.innerHTML = ""; clearTimeout(num); } else { button.disabled=true; span.innerHTML = time + "秒后重新獲得返回值"; time--; num = setTimeout("click1()",1000); } } </script> </body> </html>
setInterval()
JS setInterval() 函數可以定義一個能夠重復執行的定時器,每次執行需要等待指定的時間間隔。
使用方法:
setInterval(code,millisec[,"lang"])
code 必需。要調用的函數或要執行的代碼串。
millisec 必須。周期性執行或調用 code 之間的時間間隔,以毫秒計。
實例:
<html> <head> <meta charset="utf-8" /> </head> <body> <button id="button" onclick="set()">獲取驗證碼</button> <span id="span"></span> <script> var time = 10; var num; var button = document.getElementById("button"); var span = document.getElementById("span"); function set() { num = setInterval("click()", 1000); button.disabled = true; } function click() { if (time == 0) { button.disabled = false; time = 10; span.innerHTML = ""; clearInterval(num); } else { span.innerHTML = time + "秒后重新獲得返回值" time--; } } </script> </body> </html>
“javascript的定時器有哪幾種”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。