JavaScript setTimeout()基本用法有哪些
在制作網(wǎng)頁動態(tài)效果時(shí),可能會遇到需要延時(shí)在執(zhí)行的需求,這時(shí)就可以用到 js 中定時(shí)器來實(shí)現(xiàn)此類需求,本文將對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!');}
自動每秒加 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í)行命令,三秒鐘后自動關(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)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. JAMon(Java Application Monitor)備忘記2. SpringBoot+TestNG單元測試的實(shí)現(xiàn)3. Java GZip 基于內(nèi)存實(shí)現(xiàn)壓縮和解壓的方法4. IntelliJ IDEA設(shè)置默認(rèn)瀏覽器的方法5. Docker容器如何更新打包并上傳到阿里云6. VMware中如何安裝Ubuntu7. Springboot 全局日期格式化處理的實(shí)現(xiàn)8. python 浮點(diǎn)數(shù)四舍五入需要注意的地方9. idea配置jdk的操作方法10. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問題
