Javascript &引用;如果;语句在每次发生时执行相同的操作
在尝试为每次运行Javascript &引用;如果;语句在每次发生时执行相同的操作,javascript,jquery,html,css,if-statement,Javascript,Jquery,Html,Css,If Statement,在尝试为每次运行if语句切换turn变量时,我总是得到相同的结果。每次,turn计算为2 代码如下: $(function() { var turn = 2; if (turn == 1) { $(".box").on("click", function() { var $thisBox = $(this).children(); $thisBox.addClass("x").animate({ opacity: 1 }, 1
if
语句切换turn
变量时,我总是得到相同的结果。每次,turn
计算为2
代码如下:
$(function() {
var turn = 2;
if (turn == 1) {
$(".box").on("click", function() {
var $thisBox = $(this).children();
$thisBox.addClass("x").animate({
opacity: 1
}, 1000);
});
turn = 2;
} else if (turn == 2) {
$(".box").on("click", function() {
var $thisBox = $(this).children();
$thisBox.addClass("o").animate({
opacity: 1
}, 1000);
});
turn = 1;
} else {
document.write("Uh Oh");
}
});
为什么会发生这种情况?您只需设置一次
onClick
侦听器,并检查onClick
事件调用的函数中turn
值
$(函数(){
var-turn=2;
$(“.box”)。在(“单击”,函数(){
如果(圈数===1){
console.log('foo');
匝数=2;
}否则如果(回合===2){
console.log('bar');
圈数=1;
}否则{
console.log(“Uh-Oh”);
}
});
});代码>
单击我
它仍然会给我相同的结果代码处于文档就绪事件中,它只会运行一次。OP在页面重新加载之间似乎需要持久数据。