0

前 3 秒变量 x 的值为 0,3 秒后 x 值设置为 1。

每当我们在 0 到 3 秒之间单击按钮时,不应调用函数 handleClick。每当我们在 3 秒后单击按钮时,应该调用函数 handleClick。

下面是我正在使用的 HTML 和 JS 代码。但是即使在 3 秒后也不会调用函数 handleClick。

HTML:

<button class="quizy-mg-item">click here</button>

JS:

var x=0;
setTimeout(3000,function(){
x=1 
})
function handleClick(){
document.write("Success");
}
if(x) {
$('.quizy-mg-item').click(handleClick);
}
4

1 回答 1

2

试试这个代码,

setTimeout(function() {
  $('.quizy-mg-item').click(handleClick);
},3000);

function handleClick(){
  document.write("Success");
} 

您的 setTimeout 函数的参数顺序错误。

也在这里,

if(x) {
  $('.quizy-mg-item').click(handleClick);
}

在内部进行条件检查时ifx实际上是 0,因此没有click附加处理程序。它与以后的值无关x

ps 不要使用document.write,用于console.log调试。

于 2013-03-18T02:41:57.930 回答