克隆元素 |对于每个 |最大调用堆栈超出错误

Cloning Elements | For Each | Max Call Stack Exceed Error

我的objective真的很简单。我有一个包含 50 个元素的数组。根据数组的长度,我需要在我的 HTML 文档中克隆一个现有的 DIV 元素。 Array 中有一些我想使用的数据,但我似乎无法超出我不断收到的最大调用堆栈错误。这是我的代码:

<div class = "SomeSuperParentElement">
    <div class = "someDiv" style = "display:none">
    </div>
</div>
    content = [length of this = 50];

    $.each(content, function(index) {
    $(".someDiv").clone().css("display", "").appendTo(".SomeSuperParentElement");
    });

将每个数组值绑定到每个 div/element 会导致严重的性能问题。有一种更好的方法可以做到这一点,那就是将加载事件的值绑定到 div/element

$('div').load(function(e){
       var elem = e.target;
       if (elem.nodeName==''){
           //.... your business goes here....
           // remember to replace $(this) with $(Elem)
       }
})

阅读更多你会对这篇关于活动的文章感兴趣delegate

您应该删除克隆元素上的 class someDiv,这会导致错误。

$.each(content, function(index) {
$(".someDiv").clone().removeClass('someDiv').css("display", "").appendTo(".SomeSuperParentElement");
});