5

Web アプリケーションでは、最初のステップで約10,000 個の空のセルを持つ大きくて非常に複雑なテーブルを動的に作成します(テーブルのセルには空のままのものもあれば、そうでないものもあります)。私の最初のアプローチでは、空のセルが崩壊するのを防ぐために、改行なしのスペースで innerHtml を使用しました。

td.innerHtml = ' ';

しかし、それはかなり遅かったです。次に、innerText を設定する方が、innerHtml を設定するよりもはるかに高速であることを発見しました。だから私は自分のコードを

td.innerText = '\u00a0';

各セルtd.innerText = ' 'にテキストを書き込んだだけだからです。" "Internet Explorer 11 では動作しているように見えましたが、Firefox では空のセルの境界線が消えました。しかし、(Firebug などを使用して) セルを検査し、以前のバージョンと比較しても、違いはわかりません。

4

1 に答える 1

11

element.innerTextは標準プロパティではありません。これは Microsoft によって Internet Explorer に導入されましたが、他のブラウザーでのサポートは保証されていません (これが、奇妙な点が見られる理由です)。

アプローチを使用するelement.textContentか、再考してください。10,000 の空のセル テーブルを生成することは、非常に悪い考えのように思えます。

于 2014-10-30T13:08:14.673 に答える