用javascript播放声音不起作用

时间:2014-05-22 12:48:19

标签: javascript html audio

我想要创建一个包含图像的表格,每个图像在点击时都会播放不同的声音。 当我在一个简单的页面中创建一个JavaScript函数时,它可以正常工作,但是当我把它放在我的页面中时,如果没有表格只是句子就行不通。

然后,我再试一次,但它没有用..

<span id="dummy"> </span> <table> <tr><td> <td> <a  onclick="playSound('/img/letter/sound/a.mp3');"><img src="./img/letter/aa.jpg"/><p>Apple</p></a></td></tr>...........</table>

的JavaScript

    <script language="javascript" type="text/javascript">
function playSound(soundfile) {
  document.getElementById("dummy").innerHTML=document.getElementById("dummy").innerHTML+
    "<embed src=\""+soundfile+"\" hidden=\"true\" autostart=\"true\" loop=\"false\" />";
}
</script>

从这里我试过: Play sound with javascript

WebDesign Play Sound

1 个答案:

答案 0 :(得分:0)

您的代码正在运行。但脚本必须在你的html代码之后。

并解决声音重复问题。你必须改变你的剧本。

function playSound(soundfile) {
var audie = document.getElementById("myAudio");
document.getElementById("dummy").innerHTML=document.getElementById("dummy").innerHTML = 
"<embed src=\""+soundfile+"\" hidden=\"true\" autostart=\"true\" loop=\"false\" id=\"myAudio\" />";

console.log("audio src " ,audie.src);
console.log("file ", soundfile);

if( audie.src == soundfile){ 
    audie.paused ? audie.play() : audie.pause();

}else{
     audie.src = soundfile;
     audie.play();
}
}

http://fiddle.jshell.net/v7KV2/5/