在 chrome 中,将视频 dom 节点的 src 属性设置为空字符串 ( "" ) 会释放与视频节点关联的内存。这在 FF 版本 16.0.1 到今天当前的夜间版本 19.0a1 中不起作用。每晚构建在视频节点上具有可用的属性 mozSrcObject ,有人建议您可以将其设置为 null ,但这似乎也不起作用。我还尝试从 DOM 中删除节点,希望它们能够被垃圾收集,但这也不起作用。
问问题
992 次
1 回答
2
从HTML5 规范:
4.8.10.2 媒体资源的位置
媒体元素的
src
content 属性给出了要显示的媒体资源(视频、音频)的地址。该属性(如果存在)必须包含一个可能被空格包围的有效非空 URL。如果
src
设置或更改了媒体元素的属性,用户代理必须调用媒体元素的媒体元素加载算法。(即使存在源元素,删除 src 属性也不会这样做。)
听起来将 设置src
为空值或删除它不会触发媒体元素加载算法。我建议load()
以后再打电话。如果你可以强制它通过资源选择算法,那么它会打到这一步:
否则,媒体元素既没有 src 属性也没有源元素子元素:将 networkState 设置为 NETWORK_EMPTY,并中止这些步骤;同步部分结束。
当然,我只是猜测。希望能帮助到你。
于 2012-10-19T01:40:41.027 回答