我在HTML页面上有一个音频对象,并根据用户输入,构建了一个源对象并将其分配给音频对象。他们有控制,玩,一切都很好。我希望他们能够选择另一个文件,构建新的源元素并将其替换为当前的元素。但是,我似乎无法弄清楚如何杀死/删除/卸载活动的。
我当然可以暂停当前,并用我的新元素替换该源元素,但这并不能解决问题。我是否需要销毁音频元素然后构建一个新元素?这里有一些片段(假设在调用它来加载新的源代码时总是有一个源元素,我已经验证了mp3等):
var aElems = document.getElementsByTagName("audio");
var source = document.createElement('source');
source.type= 'audio/mpeg';
source.src= 'podcast-'+pnpad+'.mp3';
aElems[0].pause();
var sElems = aElems[0].getElementsByTagName('source');
aElems[0].replaceChild(source, sElems[0]);
alert(aElems[0].innerHTML); // shows only the new child as expected
感谢您的任何意见。
答案 0 :(得分:0)
我只是添加了
aElems[0].load()
之后
aElems[0].replaceChild(source, sElems[0]);
并加载新来源。它总是很容易找到你,对吗?