小编spa*_*ey0的帖子

如何正确卸载/销毁VIDEO元素

我正在开发一个实时媒体浏览/回放应用程序,它使用<video>浏览器中的对象进行回放(如果可用).

我正在使用直接javascript和jQuery的混合,

我关心的是记忆.应用程序永远不会在窗口中重新加载,并且用户可以观看许多视频,因此随着时间的推移,内存管理成为一个大问题.在今天的测试中,我看到内存配置文件按照每个后续加载流式传输的视频大小跳跃,并且永远不会回落到基线.

我尝试了以下相同的结果:

1 - 清空包含已创建元素的父容器,例如:

$(container_selector).empty();
Run Code Online (Sandbox Code Playgroud)

2 - 暂停并删除匹配"视频"的子项,然后清空父容器:

$(container_selector).children().filter("video").each(function(){
    this.pause();
    $(this).remove();
});
$(container_selector).empty();
Run Code Online (Sandbox Code Playgroud)

有没有其他人遇到这个问题,有没有更好的方法来做到这一点?

javascript jquery html5 dom memory-management

46
推荐指数
4
解决办法
6万
查看次数

标签 统计

dom ×1

html5 ×1

javascript ×1

jquery ×1

memory-management ×1