2016-06-11 128 views
-1
<!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> 

嗨,的HTML和Javascript音频播放和停止按钮

我不明白为什么这是行不通的。当我点击(它开始)时,它应该开始,并且当我再次点击时(它不会),我们会假设它会发生。我认为“else if”声明不起作用,但为什么?

感谢,

H.卡格拉

+0

这不是Java,它是Javascript。如果你不知道它们的区别,那么网站上的每一个wiki都会提供帮助, –

+0

谢谢你的好意Rachel。我会遵循你的建议。 – Caglar

+0

我编辑了标题。对不起,造成误解。 – Caglar

回答

0

您音频的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(); 
} 
+0

感谢您回答Joachim。我做了你所说的,但没有奏效。按钮效果正在工作,但音频甚至没有播放。 – Caglar

+0

您是否已将该作业移至函数外部的'myAudio.src'?看我的小提琴https://jsfiddle.net/1Lha66vp/看到一个工作的例子。 –

+0

这似乎不知怎么我忘了添加在下面引号的引号。感谢您的全力帮助。它正在完美工作=) “document.getElementById(”myImage“)。onclick = aud_play_pause;” – Caglar