JavaScript setTimeout()基本用法有哪些
在制作網(wǎng)頁動(dòng)態(tài)效果時(shí),可能會(huì)遇到需要延時(shí)在執(zhí)行的需求,這時(shí)就可以用到 js 中定時(shí)器來實(shí)現(xiàn)此類需求,本文將對(duì)setTimeout()做一個(gè)用法總結(jié)。
setTimeout() 方法用于在指定的毫秒數(shù)后調(diào)用函數(shù)或計(jì)算表達(dá)式(以毫秒為單位) setTimeout()只執(zhí)行函數(shù)一次,如果需要多次調(diào)用可以使用setInterval(),或者在函數(shù)體內(nèi)再次調(diào)用setTimeout()setTimeout()用法
舉個(gè)簡單的例子
加入下列代碼,在打開的頁面靜候三秒后,彈出警告框“你好”
<script> setTimeout('alert(’你好’)', 3000) </script>
效果:
再復(fù)雜一些的function定義
<script>var myvar;function myFunction() { myVar = setTimeout(alertFunc, 3000);}function alertFunc() { alert('Hello!');}
自動(dòng)每秒加 1 的 function
使用 setTimeout( ) 令文字框的數(shù)值每秒就加 1, 當(dāng)然你也可以設(shè)定其他遞增的速度, 例如每五秒就加 5, 或每五秒就加 1。
<script>x = 0function countSecond( ){ x = x+1 document.fm.displayBox.value=x setTimeout('countSecond()', 1000)}</script> <body bgcolor=lightcyan text=red> <p> </br><form name=fm><input type='text' name='displayBox'value='0' size=4 ></form><script>countSecond( )</script></body>
用上述的方法設(shè)定時(shí)間, setTimeout( ) 雖然設(shè)定了是一秒, 但瀏覽器還有另外兩項(xiàng)功能要執(zhí)行, 所以一個(gè)循環(huán)的時(shí)間是稍多于一秒, 例如一分鐘可能只有58 個(gè)循環(huán)。
延時(shí)關(guān)閉網(wǎng)頁
按下按鈕,Window open()打開一個(gè)網(wǎng)頁,執(zhí)行命令,三秒鐘后自動(dòng)關(guān)閉
<button onclick='openWin()'>打開 '窗口'</button><script>function openWin() { var myWindow = window.open('', '', 'width=200, height=100'); myWindow.document.write('這是一個(gè)新窗口'); setTimeout(function(){ myWindow.close() }, 3000);}</script>
取消setTimeout()
當(dāng)一個(gè) setTimeout( ) 開始了循環(huán)的工作, 我們要使它停下來, 可使用 clearTimeout( )
<button onclick='myFunction()'>點(diǎn)我彈出</button><button onclick='myStopFunction()'>阻止彈出</button><script>var myVar;function myFunction() { myVar = setTimeout(function(){ alert('Hello') }, 2000);}function myStopFunction() { clearTimeout(myVar);}</script>
小結(jié)
setTimeout(),clearTimeout() , setInterval() 可以在寫代碼過程中靈活運(yùn)用其特點(diǎn)達(dá)到需要完成的目的
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Android table布局開發(fā)實(shí)現(xiàn)簡單計(jì)算器2. 理解PHP5中static和const關(guān)鍵字3. jQuery 實(shí)現(xiàn)DOM元素拖拽交換位置的實(shí)例代碼4. php模擬實(shí)現(xiàn)斗地主發(fā)牌5. IntelliJ IDEA安裝插件的方法步驟6. phpstorm恢復(fù)默認(rèn)設(shè)置的方法步驟7. Vue封裝一個(gè)TodoList的案例與瀏覽器本地緩存的應(yīng)用實(shí)現(xiàn)8. Python random庫使用方法及異常處理方案9. Vuex localStorage的具體使用10. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟

網(wǎng)公網(wǎng)安備