我有这个 jquery 代码,它可能会导致 DOM 在迭代的每一步重绘。 我怎样才能只执行一次?
$.each(d.sponsoren, function(k,v) {
$("#sponsoren").parent().append( $("<div/>").append($("<a/>").attr("href", v.l).append($("<img/>").attr("src", v.im).css("margin","1").css("border","0"))) );
});
最佳答案
将 dom 节点保留在内存中,直到 bucle 完成,然后将内存中的节点追加到 DOM
var $tempnode = $('<div />');
$.each(d.sponsoren, function(k,v) {
$tempnode.append( $("<div/>").append($("<a/>").attr("href", v.l).append($("<img/>").attr("src", v.im).css("margin","1").css("border","0")));
});
$("#sponsoren").parent().append( $tempnode );
关于javascript - JQuery 不会在每次迭代中追加以避免 DOM 重绘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21815907/