我正在制作一个垄断游戏来教自己JS,jQuery等等。。。
当我将move token函数组合在一起时,我无法理解为什么在prepend调用中没有删除播放器令牌。
这里包括一张显示当前代码结果的图片:
prepend and remove not removing
function moveToken(player,PosToMove){
$("#"+PosToMove).prepend($("#player"+player).remove());
positionTokens(PosToMove);
}
显然可变的“player”是轮到它的玩家,“PosToMove”是要移动到的位置。此函数调用骰子掷骰的总金额,一次调用一个,positionTokens只是安排tokens如果一个属性上有多个token,它只影响tokens的位置,因此它不属于此问题。
任何建议都将不胜感激。
一言为定!
编辑
好吧,那么prepend也会删除,但是现在它和我的骰子掷骰和移动令牌函数的调用有关系。。。。我已经试了一天了,有人想喝点什么吗?
function rollDice() {
try{
var playerMarch = 0;
var die1 = Math.floor((Math.random() * 6) + 1);
var die2 = Math.floor((Math.random() * 6) + 1);
var rollTotal = die1+die2;
if( currentTurn === 1){
for(var i = 1; i <= rollTotal; i++){
playerMarch++;
moveToken(currentTurn,playerMarch);
playerOne.currentPos++;
}
}
return (die1 + die2);
}
catch(e){
alert(e.name+" Message: "+e.message);
}
}
最佳答案
我认为使用一个jQuery对象作为参数的prepend已经移动了元素。试试这个。。。
function moveToken(player,PosToMove){
$("#"+PosToMove).prepend($("#player"+player));
positionTokens(PosToMove);
}
关于javascript - jQuery .remove()不删除img,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46351644/