首页/javascript外包/js定时器setTimeout()与clearTimeout() setInterval 用法

js定时器setTimeout()与clearTimeout() setInterval 用法

发布-xiaoming | 浏览量-

 

 
setTimeout 是在载入后延迟指定时间后,去执行一次表达式,仅执行一次
setInterval 它从载入后,每隔指定的时间就执行一次表达式
 
1.基本用法:
 
var i=0;
setTimeout("i+=1;alert(i)",1000);
 
   执行一个函数:
 
var i=0;
setTimeout(function(){i+=1;alert(i);},1000);
   
   //注意上面的两种方法的不同
 
下面再来一个执行函数:
var i=0;
function test(){
i+=1;
alert(i);
}
setTimeout("test()",1000);
也可以这样:
setTimeout(test,1000);
 
   总结:
   setTimeout的原型是这样的:
iTimerID = window.setTimeout(vCode, iMilliSeconds [, sLanguage])
   
setTimeout有两种形式
 
setTimeout(code,interval)
setTimeout(func,interval,args)
 
其中code是一个字符串
        func是一个函数.
 
注意"函数"的意义,是一个表达式,而不是一个语句.
比如你想周期性执行一个函数
function a(){
//...
}
可写为
setTimeout("a()",1000)
setTimeout(a,1000)
 
这里注意第二种形式中,是a,不要写成a(),
 
展开来说,不管你这里写的是什么,如果是一个变量,一定是一个指向某函数的变量;如果是个函数,那它的返回值就 要是个函数
 
2.用setTimeout实现setInterval的功能
思路很简单,就是在一个函数中调用不停执行自己,有点像递归
var i=0;
function xilou(){
i+=1;
if(i>10){alert(i);return;}
setTimeout("xilou()",1000);
//用这个也可以
//setTimeout(xilou,1000);
}
 
3.setTimeout()与clearTimeout()  
 
 
setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式.
 
clearTimeout() 方法可取消由 setTimeout() 方法设置的 timeout.
 
<input type = text id = aaa >
<input type = button value = stop id = bb onclick = bb()>
<script>
<!--
var iTime
function aa()
{
    aaa.value += "!";
iTime=setTimeout("aa()",600);
 
}
function bb()
{
if (iTime !="")
clearTimeout(iTime);
}
aa()
-->
</script>

4. 应用jQuery的扩展可以解决这个问题。

$(document).ready(function(){

$.extend({
  show:function(){
   alert("ready");
  }
});
setInterval("show()",3000);
});


5. 指定定时执行的函数时不要使用引号和括号。

 
$(function(){
function show(){
   alert("ready");
}
setInterval(show,3000);// 注意函数名没有引号和括弧!
// 使用setInterval("show()",3000);会报“缺少对象”

});

js过10秒自动关闭页面

 

网页倒计时代码|js倒计时代码

 

 

原文地址:http://www.35ui.cn/post/20140729316.html

标签setTimeout定时器

上一条: HTML5新增的几个INPUT属性
下一条: jquery返回顶部代码

或许你还对下面的文章感兴趣