出于这个问题的目的,假设我们需要append()
1000 个对象到该body
元素。
你可以这样做:
for(x = 0; x < 1000; x++) {
var element = $('<div>'+x+'</div>');
$('body').append(element);
}
这可行,但是对我来说似乎效率低下,因为 AFAIK 这将导致 1000 个文档重排。更好的解决方案是:
var elements = [];
for(x = 0; x < 1000; x++) {
var element = $('<div>'+x+'</div>');
elements.push(element);
}
$('body').append(elements);
然而,这不是一个理想的世界,这会引发错误Could not convert JavaScript argument arg 0 [nsIDOMDocumentFragment.appendChild]
。我知道append()
不能处理数组。
我将如何使用jQuery
(我知道DocumentFragment节点,但假设我需要在元素上使用其他 jQuery 函数,例如.css()
)一次向 DOM 添加一堆对象以提高性能?