我正在使用jQuery为两个玩家制作一个简单的井字游戏。我想在用户单击时插入“ X”,在双击时插入“ O”。这就是我用的
$(document).ready(function(){
$(".tic").click(function(){
$(this).append("X");
});
$(".tic").dblclick(function(){
$(this).append("O");
});
});
当用户双击“ X”然后显示“ O”时。
答案 0 :(得分:0)
我想我理解您的问题。您的代码正在按预期的方式运行,即,在第一次单击时附加X,然后在第二次单击时附加O,但未清除...因此最终得到XO。
如果您更正代码以替换单击的.tac
的文本,则它将覆盖先前的值。这是JSfiddle。
$(document).ready(function(){
$(".tic").click(function(){
$(this).text("X");
});
$(".tic").dblclick(function(){
$(this).text("O");
});
});
或者,只需检查文本的值并在空格,X,O之间循环。对于玩家来说,这可能是更好的体验,同时保留了双击分配“ O”的功能。 / p>
$(document).ready(function(){
$(".tic").click(function(){
if ($(this).text() == "" ) {
$(this).text("X");
} else if ( $(this).text() == "X" ) {
$(this).text("O");
} else {
$(this).text("");
}
});
});
让我知道这是否实际上不是您的问题。