google apps脚本替换innerHtml非常慢

时间:2013-02-03 16:49:59

标签: performance google-apps-script innerhtml google-caja

我有一个谷歌应用程序脚本部署为Web应用程序。我试图通过用从服务器发回的html替换某些div的.innerHTML来刷新内容。

对于适量的简单html(不超过3层,每层基本上15个4x21 div),它需要25秒。

我记录了时间戳,发现它实际上是对mydiv.innerHTML = newhtml(在客户端中)的调用,这些调用占用了所有时间。

这是caja卫生设施吗?重新加载整个页面大约需要10秒钟,包括我知道的至少4秒的服务器时间。那么为什么这几乎要慢一个数量级呢? 感谢。

1 个答案:

答案 0 :(得分:2)

很可能是caja消毒,是的。不幸的是,在客户端上完成它的方式涉及比初始服务器负载更慢的重写。作为短期解决方案,我建议:

  1. 使用一次调用替换许多innerHtml调用,或
  2. 保持HTML结构不变并使用textContent而不是innerHTML来更改它的一小部分(例如:保持表结构完整但不可见,并在单元格上使用textContent来更改其中的值)。
  3. 从长远来看,我们意识到这很慢,并且正在积极加快速度。您可以在public Caja site上询问更详细的帮助或了解相关进展。