内存泄漏JQuery - 所有浏览器

时间:2011-06-25 18:26:11

标签: memory-leaks event-handling settimeout jquery-1.3 multiple-browsers

我在网页中使用jquery。我看到很多内存泄漏发生,一段时间后整个浏览器都停止了。我使用了筛子工具,注意到没有增加。 DOM元素,每次都是一个。 4.

我在关联事件的方式上做错了吗? 或者是因为我每隔X秒使用setTimeout来重绘我的应用程序?

活动关联:

$(”。bir_Names')上单击(showNames)。 选择器$('。bir_Names')向大约300个元素集合,每个元素在点击时调用该函数。

的setTimeout 每隔X分钟我删除应用程序中的每个HTML元素并重新绑定新数据并关联事件。我使用jquery remove()来删除元素。已经尝试过innerHTML =''和empty()。

我发现每次重绘都会有近30-40 MB的跳转,Sieve表示实际上没有删除任何已删除的节点。

Anyhelp将不胜感激。这件事让我疯狂。

感谢。

1 个答案:

答案 0 :(得分:1)

你没有提到哪个浏览器,但是一些谷歌搜索似乎表明这是IE的一个已知问题。这是一个潜在的解决方法:

http://forum.jquery.com/topic/possible-memory-leak-in-remove-and-empty

请注意,这是指jQuery的1.2.x版本。在您执行任何操作之前,请确保您运行的是最新的1.6.x版本,以首先查看是否已在jQuery中修复了该缺陷。

[编辑]确认...你说你的浏览器......'全部'......所以也许可以忽略第一个链接。