【发布时间】:2011-10-31 12:18:33
【问题描述】:
我正在构建一个 jquery/html5 音频播放器,但在将源更改为音频标签时遇到了一些问题。我实现的方法适用于除 IE9 以外的所有浏览器。
这是一个代码示例:
audio = $("<audio>").attr("id", "audioElement")
.attr("preload", "auto")
.appendTo(player);
function addMp3Source(sourceUrl) {
audio.empty();
var newSrc = $("<source>").attr("src", config.tracksURL + sourceUrl).appendTo(audio);
}
在 IE9 上,源正在改变,但是当我播放曲目时,播放的是旧声音。在其他浏览器上工作正常。
有什么想法吗?
【问题讨论】:
-
也许您需要删除整个音频元素并添加一个带有新源的新元素作为解决方法。
-
你在那里所做的只是清空
<audio>的html/children,你应该使用.remove()和$('<audio/>');来创建一个新元素音频,这样你就可以摆脱旧元素的痕迹, :) -
所以我不能只更改源?我已经有一些对该音频标签的引用,如果我删除标签,我会丢失这些引用。
标签: javascript jquery html audio