我的 .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">
但在这种情况下它不播放音频,给我错误:
Invalid URI. Load of media resource failed. @ file:///home/index.html
All candidate resources failed to load. Media load paused. @ file:///home/index.html
该文件位于文件夹中,知道为什么它不起作用吗?两种情况下的 html(其源代码)是相同的。
最佳答案
试试这个:
$("#capt_wav").attr("src", "doghouse.wav").detach().appendTo("#captcha");
浏览器似乎只在添加元素时播放文件,而不是在刚刚修改元素时播放文件。
关于jquery - 通过 jQuery 更改源后 html 音频找不到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17300640/