对于前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);
}
答案 0 :(得分:2)
试试这段代码,
setTimeout(function() {
$('.quizy-mg-item').click(handleClick);
},3000);
function handleClick(){
document.write("Success");
}
你的setTimeout函数的参数顺序错误。
同样在这里,
if(x) {
$('.quizy-mg-item').click(handleClick);
}
在if
内的条件检查时,x
实际为0,因此没有附加click
处理程序。它与x
的价值无关。
P.S。不要使用document.write
,请使用console.log
进行调试。