window對象有兩個主要的定時方法,分別是setTimeout 和 setInteval 他們的語法基本上相同,可是完成的功能取有區別。javascript
setTimeout方法是定時程序,也就是在什麼時間之後幹什麼。幹完就完了.java
setInterval方法則是表示間隔必定時間反覆執行某操做。函數
JS裏設定延時:對象
使用SetInterval和設定延時函數setTimeout 很相似。setTimeout 運用在延遲一段時間,再進行某項操做。ip
setTimeout("function",time) 設置一個超時對象input
setInterval("function",time) 設置一個超時對象io
SetInterval爲自動重複,setTimeout不會重複。function
clearTimeout(對象) 清除已設置的setTimeout對象cli
clearInterval(對象) 清除已設置的setInterval對象語法
若是用setTimeout實現setInerval的功能,就須要在執行的程序中再定時調用本身才行。若是要清除計數器須要根據使用的方法不一樣,調用不一樣的清除方法:
例如:tttt=setTimeout('northsnow()',1000);
clearTimeout(tttt);
或者:
tttt=setInterval('northsnow()',1000);
clearInteval(tttt);
舉一個例子:
<div id="liujincai"></div>
<input type="button" name="start" value="start" onclick='startShow();'>
<input type="button" name="stop" value="stop" onclick="stop();">
<script language="javascript">
var intvalue=1;
var timer2=null;
function startShow()
{
liujincai.innerHTML=liujincai.innerHTML + " " + (intvalue ++).toString();
timer2=window.setTimeout("startShow()",2000);
}
function stop()
{
window.clearTimeout(timer2);
}
</script>
或者:
<div id="liujincai"></div>
<input type="button" name="start" value="start" onclick='timer2=window.setInterval("startShow()",2000);//startShow();'>
<input type="button" name="stop" value="stop" onclick="stop();">
<script language="javascript">
var intvalue=1;
var timer2=null;
function startShow()
{
liujincai.innerHTML=liujincai.innerHTML + " " + (intvalue ++).toString();
}
function stop()
{
window.clearInterval(timer2);
}
</script>