JavaScript setTimeout()基本用法有哪些
在制作網(wǎng)頁(yè)動(dòng)態(tài)效果時(shí),可能會(huì)遇到需要延時(shí)在執(zhí)行的需求,這時(shí)就可以用到 js 中定時(shí)器來(lái)實(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è)簡(jiǎn)單的例子
加入下列代碼,在打開的頁(yè)面靜候三秒后,彈出警告框“你好”
<script> setTimeout("alert('你好')", 3000) </script>
效果:
再?gòu)?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 = 0 function 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)頁(yè)
按下按鈕,Window open()打開一個(gè)網(wǎng)頁(yè),執(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)的工作, 我們要使它停下來(lái), 可使用 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() 可以在寫代碼過(guò)程中靈活運(yùn)用其特點(diǎn)達(dá)到需要完成的目的
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
js 判斷當(dāng)前時(shí)間是否處于某個(gè)一個(gè)時(shí)間段內(nèi)
這篇文章主要介紹了js 判斷當(dāng)前時(shí)間是否處于某個(gè)一個(gè)時(shí)間段內(nèi),使用 jutils - JavaScript常用函數(shù)庫(kù)的 isDuringDate 函數(shù)來(lái)實(shí)現(xiàn),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09js實(shí)現(xiàn)點(diǎn)擊添加一個(gè)input節(jié)點(diǎn)
本文給大家分享的是一段點(diǎn)擊自動(dòng)添加inpu節(jié)點(diǎn)的代碼,非常的簡(jiǎn)單實(shí)用,這里推薦給大家。2014-12-12javascript中如何快速獲取數(shù)組最后一個(gè)值
這篇文章主要介紹了javascript中如何快速獲取數(shù)組最后一個(gè)值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01Bootstrap中的表單驗(yàn)證插件bootstrapValidator使用方法整理(推薦)
這篇文章主要介紹了Bootstrap中的表單驗(yàn)證插件bootstrapValidator使用方法整理(推薦)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06微信小程序wx.getUserInfo授權(quán)獲取用戶信息(頭像、昵稱)的實(shí)現(xiàn)
這篇文章主要介紹了微信小程序wx.getUserInfo授權(quán)獲取用戶信息(頭像、昵稱)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08js實(shí)現(xiàn)淘寶首頁(yè)的banner欄效果
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)淘寶首頁(yè)的banner欄效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11用RadioButten或CheckBox實(shí)現(xiàn)div的顯示與隱藏
用RadioButten(或CheckBox)實(shí)現(xiàn)div的顯示與隱藏,當(dāng)選擇“女”時(shí),顯示“美女、才女”;當(dāng)選擇“男”時(shí)隱藏,具體實(shí)現(xiàn)如下,感興趣的朋友可以參考下2013-09-09WebApi+Bootstrap+KnockoutJs打造單頁(yè)面程序
這篇文章主要介紹了WebApi+Bootstrap+KnockoutJs打造單頁(yè)面程序的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05