我使用javascript将160行添加到包含10列的表中。如果我这样做:
tidyverse
渲染没有时间,但如果我切换到cell.innerHTML = value,渲染时间会慢得多。我们是否有另一种方法可以更快地在单元格内呈现HTML元素?
BTW,问题似乎只出现在IE上(IE 11更具体)。它在Google Chrome中很不错。我正在使用.NET AjaxToolkit。
答案 0 :(得分:2)
innerHTML
很慢,因为它必须在值中查找HTML标记,并将其解析为DOM节点。如果您只是插入不包含任何HTML标记的纯文本,请改用textContent
。
如果您需要在单元格中创建复杂的HTML,使用innerHTML
可能是最快的方式,因为优化HTML解析一直是浏览器设计者的首要任务。但是如果HTML很简单(例如只是几个元素),那么在Javascript中创建它们可能更有效。您需要对特定应用程序进行基准测试,以找出盈亏平衡点的位置。
答案 1 :(得分:0)
这是IE9,IE10,IE11和Edge中的一个突出错误: - https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/4561410/