javascript – jQuery是否在每个循环中使用创建文档片段?

前端之家收集整理的这篇文章主要介绍了javascript – jQuery是否在每个循环中使用创建文档片段?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我读过jQuery在内部使用文档片段来加快渲染速度.但我想知道是否有人知道jQuery是否会在这种情况下使用createDocumentFragment我将使用每个循环将img元素附加到DOM?
var displayArray = []; // Lots of img elements

$.each(displayArray,function()
{
    $('#imgSection').append(this);
});

或者我是否需要使用此代码以减少浏览器重排的次数

var displayArray = []; // Lots of img elements
var imgHolder = $('<div/>');

$.each(displayArray,function()
{
    imgHolder.append(this);
});

$('#imgSection').append(imgHolder);

此外,displayArray由其他代码(此处未显示)填充,该代码根据JSON文件中的路径创建img元素.

谢谢你的任何建议.

解决方法

为什么所有循环都要添加元素?
$('#imgSection').append("<div>" + displayArray .join("") + "</div>");

好的,这是元素.

最快的方法是使用追加数组本身.

$("#out").append(elems);

使用一个div追加的其他选项是

var div = $("<div/>").append(elems);
$("#out").append(div);

但是,除非预先加载,否则一次附加大量图像会很糟糕.这将是一堆排队的http请求.

jsPerf test cases

原文链接:https://www.f2er.com/jquery/155181.html

猜你在找的jQuery相关文章