function clickBtn(btn)
{
setTimeout("btn.value = 'click'",3)
}
我需要在3秒之后来设置button的文字,查询无果,故来相问
用闭包可以很容易的解决,试试下面的代码:
function clickBtn(btn)
{
setTimeout(function() {
btn.value = 'click';
}, 3000);
}
另外,3秒是3000,setTimeout
后面一个参数的单位是毫秒
var a="yourname";
console.log(""+a+"");
function clickBtn(btn)
{
setTimeout("btn.value = 'click'",3)
}
setTimeout指定字符串代码执行的时候是在全局作用域下找btn变量,会执行出错提示ReferenceError: Can't find variable: btn,
不推荐使用这样setTimeout的写法
使用指定函数的写法
function clickBtn(btn)
{
setTimeout(function(){
btn.value = 'click';
console.log(btn.value );
},3)
}
如果一定要使用原来的写法,那么如下修改
function clickBtn(btn)
{
window.btn=btn;
setTimeout("btn.value = 'click';console.log(btn.value)",3)
}
这样会污染全局对象,你的变量有可能被别的函数修改掉,危险~~~~