javascript - 是否可以修复第三方广告的内存泄漏?

标签 javascript memory-leaks ads google-dfp

我在使用 Google DFP 广告的 Playlist.com 上不断发生内存泄漏 - 打开标签页,它一直使用越来越多的内存(仅当启用广告时)。

可在此处找到重现泄漏的示例测试页:http://dl.dropboxusercontent.com/u/6278910/ad-memory-leak.html .

我们这边有什么办法可以帮助减少泄漏吗?显然,从经济上讲,关闭广告不是一个可行的解决方案。

编辑:您可以在 Chrome 中打开开发者工具并尝试内存时间轴 - 每次加载广告时,它们都会占用更多内存。

最佳答案

这是可能的,尝试重新加载 iframe 以在删除它之前清理 DOM,然后再次添加它。另见 answer :

<a href="#">Remove</a>
<iframe src="url" />​

$('a').click(function(){
    $('iframe')[0].contentWindow.location.reload();
    setTimeout(function(){
       $('iframe').remove();
    }, 1000);

    ... add add iframe again ...
});​

根据制作方式的不同,添加内容可能会出现一些闪烁,但应该不会很严重。添加会在一段时间后自行刷新,因此如果这样做,一次添加一个 iframe 用户不会注意到。

关于javascript - 是否可以修复第三方广告的内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22342144/

相关文章:

ads - 如何自定义谷歌广告

javascript - 如何在 Javascript 中按任意键触发函数?

javascript - 通过位于单独的 js 文件中的 JS 中的对象构造函数创建对象

javascript - Google Cloud Function 出现 ChildProcessError 错误

actionscript-3 - AS3 TextField 和 TextFormat 内存泄漏 "other bitmap memory"

html - 我需要向 div 添加什么属性才能对 AdBlock 用户隐藏它?

html - 显示自适应 Google Ads - CSS 问题

javascript - 提示命令语法

ios - 为什么 UILabel 内存泄漏?

c++ - std::list 中动态分配的数组导致内存泄漏