我的软件出现问题我正在添加帮助声音按钮。
这就像
当我点击它时,它就像
当音频结束时,它会变为
但如果我想重播它,我必须单击按钮两次。 为什么会如此以及如何纠正它以便我只需点击一下即可重播
HTML
<div id="dummy"></div>
<img src="images/soundoff.png" onClick="sound('helpsound.mp3')" id="snd" />
JAVASCRIPT
var clickNumber = 2,
timeoutId = null;
function sound(soundfile) {
imagesnd = document.getElementById('snd');
switch (clickNumber)
{
case 1:
imagesnd.src = "images/soundoff.png";
document.getElementById("dummy").innerHTML="";
if (timeoutId !== null)
{
clearTimeout(timeoutId);
timeoutId = null;
}
clickNumber = 2
return(false);
break;
case 2:
clickNumber = 1;
imagesnd.src = "images/sound.png";
document.getElementById("dummy").innerHTML="<embed src=\""+soundfile+"\" hidden=\"true\" autostart=\"true\" loop=\"false\"/>";
timeoutId = setTimeout(function(){
imagesnd.src = "images/soundoff.png";
clickNumber = 1;
},10000);
clickNumber = 1;
break;
}//switch end
}//function end
答案 0 :(得分:0)
您的超时持续时间设置为10秒。尝试在您的超时处理程序中放置console.log
以查看它是否实际被触发,并在再次单击图像之前将clickNumber
重置为1。
答案 1 :(得分:0)
我得到了它我只是更改了图像而不是这种情况所以当我第一次点击它进入案例1(nosound)和第二次点击案例2(声音)时