【问题标题】:Adding content to the DOM: any limits?向 DOM 添加内容:有什么限制吗?
【发布时间】:2012-08-05 10:33:01
【问题描述】:

这个问题可能有点理论(我的意思是修辞吗?)或模糊,但无论如何。

我计划构建一个网页,其中内容将通过 Ajax 请求添加并使用选项卡和窗格显示。初始视图只有一个选项卡并显示链接列表。单击链接会打开一个新选项卡/窗格。用户可以浏览标签并关闭它们,就像在网络浏览器中一样。

我可以构建一个能够显示无限数量的选项卡的 UI,但这意味着将 DOM 内容添加到尽可能多(可能还有很多)窗格中。更有可能的是,我会限制可以同时打开多少个选项卡。但是这个限制应该是什么?你会遵循什么规则?在不影响性能的情况下,一个 DOM 文档可以容纳多少内容?

【问题讨论】:

  • 由于 DOM 文档属于客户端浏览器,因此对性能的影响会因客户端机器内存和处理能力而异,因此在影响性能之前您无法预测确切的数字。我认为您应该将其保持在最少的标签数量。
  • 是的,这样说我的问题有点“模糊”。而是关于您认为平均配置中的安全限制。

标签: html ajax dom


【解决方案1】:

没有办法回答你的问题。例如,我现在让 Chrome 和 Firefox 并排运行。所有浏览器总共需要 9.85GB 的共享内存(所以其中一些 RAM 在所有浏览器之间共享;我只有 8GB 的​​ RAM,实际使用了大约 2GB)。

没有 JavaScript API 可以判断内存何时紧张;唯一的迹象是机器正在开始交换或浏览器正在崩溃。

所以你有以下解决方案:

  1. 将用户限制在太小的范围内。对你有好处,对像我这样的高级用户不利。

  2. 将限制设置得太大。对你不好,因为用户会开始抱怨你的愚蠢网站如何让他们的浏览器崩溃,但对我有好处。

  3. 不要设置限制,而是清除不可见的窗格。将窗格的状态保存在某处(服务器,local storage)并在用户打开它时恢复它。相当多的努力,但它会解决你的问题。

【讨论】:

  • 谢谢亚伦。至少我知道你不会抱怨我的愚蠢网站! PS:关于本地存储的链接看起来很有趣。
猜你喜欢
  • 2019-01-16
  • 2019-08-18
  • 1970-01-01
  • 2016-09-26
  • 1970-01-01
  • 2023-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多