Javascript JS-图像未正确更改
我在做一个小游戏,但是我不能让图像变回NeutralIMG。我对JavaScript非常缺乏经验,但如果有人能告诉我我搞砸了什么,我将非常感激Javascript JS-图像未正确更改,javascript,image,Javascript,Image,我在做一个小游戏,但是我不能让图像变回NeutralIMG。我对JavaScript非常缺乏经验,但如果有人能告诉我我搞砸了什么,我将非常感激 var Celeb = document.getElementById("Celebrity"); var Sound = new Audio ("Punch1.wav"); var Punched = false; var HitCount = 0; var PunchIMG = "Justin2.png"; var NeutralIMG = "J
var Celeb = document.getElementById("Celebrity");
var Sound = new Audio ("Punch1.wav");
var Punched = false;
var HitCount = 0;
var PunchIMG = "Justin2.png";
var NeutralIMG = "Justin1.png";
Celeb.addEventListener("click", Punch);
function Punch() {
Punched = true;
if (Punched = true) {
Sound.play();
Celeb.src = PunchIMG;
HitCount ++
}
else {
Celeb.src = NeutralIMG;
}
document.getElementById("Score").innerHTML = "SCORE: " + HitCount;
}
这有一些问题。在
punch()函数中。您正在将Punched
设置为true,然后测试它是否为true。因此,它将始终执行第一个块,而不会执行else块
除此之外,if
语句仅使用一个equals将true赋值给punched。i、 ePunched=true
如果测试是否相等,则应为Punched===true
看起来您正试图设置单击时发生的情况,然后在单击后恢复到原始状态。您最好的选择可能是使用某种计时器功能。因此,从整个代码中删除Punched
变量,在Punch()
函数中,只需逐步完成播放声音、更改图片、增加单击计数器的过程,然后等待几秒钟并将图像设置回原位。对于等待,请使用google setTimeout()