gpt4 book ai didi

javascript - 为 innerHTML 设置大值时提高性能的方法

转载 作者:技术小花猫 更新时间:2023-10-29 12:46:24 25 4
gpt4 key购买 nike

我正在尝试为节点的 innerHTML 设置一个巨大的 (200K) 响应。目标是在 Internet Explorer 6 中获得比 2.7 秒更好的时间。

有什么想法吗?

最佳答案

这不会让它发生得更快,但会阻止浏览器锁定用户;当这种情况发生在后台时,他们可以继续使用该页面:

function asyncInnerHTML(HTML, callback) {
var temp = document.createElement('div'),
frag = document.createDocumentFragment();
temp.innerHTML = HTML;
(function(){
if(temp.firstChild){
frag.appendChild(temp.firstChild);
setTimeout(arguments.callee, 0);
} else {
callback(frag);
}
})();
}

使用它:

var allTheHTML = '<div><a href="#">.............</div>';
asyncInnerHTML(allTheHTML, function(fragment){
myTarget.appendChild(fragment); // myTarget should be an element node.
});

此技术将比普通 innerHTML 花费更长的时间,但用户将能够继续使用您的网站而不会注意到延迟。

关于javascript - 为 innerHTML 设置大值时提高性能的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/788614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com