2

我的 .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(它的源代码)在这两种情况下都是相同的。

4

1 回答 1

5

试试这个:

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

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

于 2013-06-25T15:16:54.903 回答