通过jQuery更改源后,html音频无法找到文件

时间:2013-06-25 14:52:17

标签: jquery html audio

我的.html文件中有这个音频元素:

<audio id ="captcha">
      <source id = "capt_wav" src = "doghouse.wav" type = "audio/wav" >
</audio>

它播放音频。现在我需要使用jQuery动态更改src属性。 然后我将原始的html音频设置为没有源(src =“”),并使用此jQuery代码设置源:

  $('#capt_wav').attr('src',"doghouse.wav");

这实际上改变了源代码,我可以从控制台看到:

之前:

<source id="capt_wav" src="" type="audio/wav">

在:

<source id="capt_wav" src="doghouse.wav" type="audio/wav">

但在这种情况下它不播放音频,给我错误:

  

无效的URI。媒体资源的加载失败。 @ file:///home/index.html

     

所有候选资源都未能加载。媒体加载暂停。 @ file:///home/index.html

该文件在文件夹中,任何想法为什么它不起作用? html(它的来源)在两种情况下都是相同的。

1 个答案:

答案 0 :(得分:5)

请改为尝试:

$("#capt_wav").attr("src", "doghouse.wav").detach().appendTo("#captcha");

浏览器似乎只在添加元素时播放文件,而不是仅在修改元素时播放。