Kendo UI テンプレートを使用して大量の HTML を生成し、DOM に挿入するページがあります。私たちは200万バイト以上を話しています。他のすべてのブラウザでは、約 2 ~ 3 秒でこれが表示されます。私はすでにjQueryを避け、document.getByElementId呼び出しを介してinnerHTMLを設定しています。最も遅い部分は、IE が行う regexp.test 呼び出しのようです。IE はすべての開始/終了タグが一致することを確認していますか? もしそうなら、速度を上げるためにこのチェックをスキップするように IE に指示する方法はありますか (つまり、「信頼してください」)。必要な HTML はすでに可能な限り小さくしているので、それはもはやオプションではありません。また、私が示しているデータはまだ最大のデータセットではないので、さらに大きくなることがわかっています。誰にもアイデアはありますか?
アップデート:
これは私が使用している現在のコードです:
var resultHtml = kendo.template(templateHtml, { useWithBlock: false })(currentPage.ViewModel);
resultHtml = resultHtml.replace(new RegExp("\>[\n\t ]+\<", "g"), "><"); // Get rid of whitespace
document.getElementById("tblData").innerHTML = resultHtml;
IE では、生成される 250 万文字を表示するのに約 10 秒かかります。Chrome/FireFox/Opera では、これには約 2 ~ 3 秒かかります。