我使用下面一段每30秒调用一次的代码来更新我页面上的一些信息;
$("#refreshblock").load("update.txt");
update.txt
包含少量加载到div中的文本(~3Kb),update.txt
文件由某些后端脚本更新。
一切正常,页面正确更新。但是,如果我在Resources
下的浏览器(Safari)中查看Inspector的XHRs
选项卡,则会显示文件update.txt
的条目数越来越多 - 每次调用jQuery时都会有一个条目
此页面旨在保持打开状态并长时间运行。我的问题是这些条目吞噬了用户系统上的内存或存储,并且每30秒会继续吞噬大约3Kb,或者这些条目仅用于调试,系统将定期清除那些AJAX负载使用的存储/内存。我知道它们肯定都存储了一段时间,而不是仅仅记录资源已加载,因为您可以单击检查器中的每个项目并查看包含的不同更新消息update.txt
的内容。
答案 0 :(得分:1)
由于您正在加载资源,它将继续吞噬用户的流量,但如果您不将其存储在特殊的东西上 - 就像本地存储一样,它不会受到伤害。此外,如果您将文件的内容加载到DOM中,只需确保删除旧的DOM元素,从而不会导致DOM元素的无限加载。
还要确保jquery不会使用cache control header一次又一次地返回相同的文件。 作为附注,如果您使用chrome - 您可以随时查看资源使用情况 - 参考链接 - google's developer pages