在網頁的特效製做中,常常要用到定時器,好比:間隔必定時間後頁面自動跳轉,或者間隔必定時間出現某種效果,像網頁上的飛雪連天,或者背景顏色的定時改變等等。
若要頁面定時跳轉,簡單的能夠在head頭部的meta標記中設定重定向就能夠了。但我要說的是javascript中的定時器,它的功能是十分強大和有用的。
在javascript中有兩個關於定時器的函數,它們是:
1.倒計定時器:timename=setTimeout("function();",delaytime);
2.循環定時器:timename=setInterval("function();",delaytime);
其中倒計定時器顧名思義,是設定一段時間後執行function()函數,而循環定時器則是每隔一段時間都執行function()函數一次。
倒計定時器通常用在一段時間後的觸發的事件,好比頁面的定時跳轉,有一些站點就是在註冊完成後自動跳轉到登陸頁面,或者用於肯定是「老客」仍是「新 客」,是老客則會點擊肯定的某個地方(由站長設定)而快速進入站點,若是是「新客」,就不知道特定的點擊處,因此能夠設定5秒或者10秒轉入新客頁面。
循環定時器則用於頁面上的持續效果,好比背景用飛雪。
function()函數,能夠是一個函數,也能夠是幾個函數,中間用;鏈接,還能夠接入javawcript的語句。
delaytime則是設定間隔的時間,以毫秒爲單位。
定時器的取消
有時候,咱們想把一個定時器去掉,像循環定時器就是一直不停的運動的。
clearTimeout(timename)來清除setTimeout()定時器,參數timename爲setTimeout()函數的返回值;
clearInterval(timename)來清除setInterval()定時器,參數timename爲setInterval()函數的返回值。 javascript
===================================================html
實例講解java
使用定時器實現JavaScript的延期執行或重複執行
window對象提供了兩個方法來實現定時器的效果,分別是window.setTimeout()和window.setInterval。其中前者可使一段代碼在指定時間後運行;然後者則可使一段代碼每過指定時間就運行一次。它們的原型以下:
window.setTimeout(expression,milliseconds);
window.setInterval(expression,milliseconds);
其中,expression能夠是用引號括起來的一段代碼,也能夠是一個函數名,到了指定的時間,系統便會自動調用該函數;
當使用函數名做爲調用句柄時, 不能帶有任何參數,如window.setTimeout(hello,5000);
而使用字符串時,則能夠在其中寫入要傳遞的參數,如window.setTimeout("hello(‘Jack’)",5000)。
兩個方法的第二個參數是milliseconds,表示延時或者重複執行的毫秒數。 express
1.window.setTimeout方法
該方法能夠延時執行一個函數,例如:
<script language="JavaScript" type="text/javascript">
<!--
function hello(){
alert("hello");
}
window.setTimeout(hello,5000);
//-->
</script>
這段代碼將使得頁面打開5秒鐘後顯示對話框「hello」。其中最後一句也能夠寫爲:
window.setTimeout("hello()",5000);
window.setTimeout(hello,5000);和window.setTimeout("hello()",5000);讀者能夠體會它們的差異。在window.setInterval方法中也有這樣的性質。
若是在延時期限到達以前取消延執行,可使用window.clearTimeout(timeoutId)方法,該方法接收一個id,表示一個定時器。這個id是由setTimeout方法返回的,例如:
<script language="JavaScript" type="text/javascript">
<!--
function hello(){
alert("hello");
}
var id=window.setTimeout(hello,5000);
document.onclick=function(){
window.clearTimeout(id);
}
//-->
</script>
這樣,若是要取消顯示,只需單擊頁面任何一部分,就執行了window.clearTimeout方法,使得超時操做被取消。
好了,如今你就能夠用定時器來爲你的主頁增光添彩了。函數
出處:http://www.cnblogs.com/phyllis/archive/2011/05/25/2056323.htmlspa
出處:http://www.cnblogs.com/phyllis/archive/2011/05/25/2056324.htmlhtm