<!DOCTYPE html>
<html>
<body>
<img id="myImage" onclick="aud_play_pause()" src="../../images/off.png" alt=""/>
<audio id="myAudio">
</audio>
<script>
function aud_play_pause()
{
var song = ["../Sesler/3.mp3"];
var myAudio = document.getElementById("myAudio");
var image = document.getElementById('myImage');
myAudio.src = song;
if (myAudio.paused)
{
image.src = "../../images/on.png";
myAudio.play();
}
else if(image.src.match("on"))
{
image.src = "../../images/off.png";
myAudio.pause();
}
}
</script>
</body>
</html>
你好
我不明白为什么它不起作用。它假设在我单击时启动(它开始),并且应该在我再次单击时弹出(它没有)。我认为"else if"语句不起作用,但为什么?
谢谢
H. 卡格拉尔
每次用户单击按钮时,您都会设置音频的src
。然后,它在加载后直接启动。将其移到函数之外,不要使用数组[...]
,而只使用字符串:
myAudio.src = "../Sesler/3.mp3";
然后,else
(没有其他条件)应该足以区分播放和暂停:
if (myAudio.paused) {
image.src = "../../images/on.png";
myAudio.play();
} else {
image.src = "../../images/off.png";
myAudio.pause();
}