如何访问 HTMLAudioElement
目前正在播放,但对此一无所知?它不是 <audio>
页面中的标签,它是一个
audio_element = document.createElement('audio');
但是现在(在我想让音频暂停的时候)DOM 已经被一个
修改了$('#details').html('').load(ajax_loader, "id=" + id, function() {
<!-- another playlist -->
}
而且我似乎无法取回我的 audio
元素回来。 它不再在 DOM 中,但音频仍在播放 女巫很好顺便说一句,但现在我想播放其他内容。当我这样做时,我可以听到两个音频文件。
所以我的问题真的只是:如何访问 HTMLAudioElement
当前正在播放,但对此一无所知?
最佳答案
如果您在创建音频元素时保留对音频元素的引用,您仍然可以通过该引用访问音频元素,然后清除该引用以将其作为垃圾回收。因此,一个使用全局变量的简单示例(不是好的做法,但您可以修改它以在您的模块中工作)是:
window.audio_element = document.createElement('audio');
后来
window.audio_element.pause();
window.audio_element = undefined;
这里是对 mozilla 文档的引用 https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio和 WhatWG 规范 https://developers.whatwg.org/the-video-element.html#the-video-element
关于Javascript : Get the HTMLAudioElement currently playing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28109541/