【发布时间】:2014-12-26 12:53:46
【问题描述】:
在一个 Web 应用程序中,我在第一步中动态创建了一个包含大约 10,000 空单元格的大型且相当复杂的表格(一些表格单元格将保持为空,而有些则不会)。我的第一个方法是使用带有 no-break space 的 innerHtml 来防止空单元格折叠:
td.innerHtml = ' ';
但这相当慢。然后我discovered 认为设置innerText 比设置innerHtml 快得多。所以我将代码更改为
td.innerText = '\u00a0';
因为td.innerText = ' ' 只是在每个单元格中写了文本" "。它似乎在 Internet Explorer 11 中工作,但在 Firefox 中,空单元格的边框消失了。但是,如果我检查单元格(通过 Firebug 或其他方式)并将它们与我以前的版本进行比较,我看不出有任何区别。
【问题讨论】:
-
火狐不支持
innerText,支持textContent -
innerText是微软的专有扩展,iirc。 -
我不确定我理解“折叠”是什么意思,也不知道为什么不能用 CSS 更有效地解决这个问题。
-
不要用 JS 解决这个问题。在你的 CSS 中使用
empty-cells: show;。 -
空单元格对我不起作用:o
标签: javascript html firefox innerhtml innertext