无论是window.setTimeout还是window.setInterval,在使用函数名作为调用句柄时都不能带参数。
先看一个简单的代码:
这段代码的效果是在1秒后显示hello world,但是如果改成
setTimeOut(show(),1000);
关键点就是这个 function(){ method(param);}
先看一个简单的代码:
这段代码的效果是在1秒后显示hello world,但是如果改成
setTimeOut(show(),1000);
就会立即显示,达不到延时的效果了。
解决方法:
function timeClick(obj)
{
obj.style.backgroundColor="gray";
obj.οnclick=function(){ return false;};
setTimeout(function(){resetbgColor(obj);},3000);
}
function resetbgColor(obj)
{
obj.style.backgroundColor="";
obj.οnclick=function(){
timeClick(this);
};
}
关键点就是这个 function(){ method(param);}
转自http://boleyn.iteye.com/blog/1144015