首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >手动清除或删除mediaelement.js播放器

手动清除或删除mediaelement.js播放器
EN

Stack Overflow用户
提问于 2012-02-24 08:24:46
回答 2查看 3.7K关注 0票数 3

我正在尝试使用backbone.js站点中的mediaelement.js播放器,但当我移入和移出我设置的各种路线时,手动删除视频/音频播放器时遇到了问题。

假设我的页面上有两个视频。当我离开这个页面时,这两个视频仍然保存在内存中:

代码语言:javascript
复制
> mejs.players
> [object, object]

当我返回页面时,原来的两个视频仍然在内存中,另外两个视频被添加到播放器对象中:

代码语言:javascript
复制
> mejs.players
> [object, object, object, object]

实际上,每次我离开页面然后返回时,mejs.players对象中都会添加额外的2个播放器。

有没有办法手动清除/删除所有玩家?

我尝试过以下几种方法:

代码语言:javascript
复制
mejs.players[0].remove()

这似乎从页面中删除了播放器控件,留下了HTML5视频播放器。但是,当我检查mejs.players时,播放器仍然存在。我可能错了,但这似乎不是性能的最佳选择。

EN

回答 2

Stack Overflow用户

发布于 2013-04-26 10:09:42

由于这是针对主干站点(具有UnderscoreJS),因此可以使用_.keys()而不是Object.keys()

代码语言:javascript
复制
if (mejs) {
    var players = _.keys(mejs.players);
    _.each(players, function(player) {
        mejs.players[player].remove();
    });
}
票数 2
EN

Stack Overflow用户

发布于 2014-01-21 15:23:55

首先删除mejs.players并创建新的mejs.players数组

如果(mejs) {

删除mejs.players;

mejs.players = [];

}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9423600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档