2017-03-09 62 views
0

我的目標非常簡單。我有一個有50個元素的數組。根據數組的長度,我需要克隆HTML文檔中現有的DIV元素。該數組中有一些數據,我想使用它,但我似乎不能超越最大調用堆棧錯誤,我不斷收到。這是我的代碼:克隆元件|對於每個|最大調用堆棧超過錯誤

<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"); 
    }); 
+0

什麼是「內容」?顯示它 – Satpal

+0

它只是一個數組,爲了使事情更具描述性,它具有的對象有我想要使用的數據,一旦我的div元素的50次克隆完成了。 –

+1

{name:「some String」,lname:「something else」},{name:「some String」,lname:「something else」},{name:「some String」,lname:「something else」}, {name:「some String」,lname:「something else」},{name:「some String」,lname:「something else」},{name:「some String」,lname:「something else」}] –

回答

0

您應該刪除someDiv類在克隆的元素上,導致錯誤。

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

@Minh帽子 - 不知道爲什麼我需要刪除班級,我需要他們.. –

+1

@Minh帽子 - 我只是採取了你的規定格式,通過添加一個「:第一個」的附加tweeked它。基本上,當我得到你的迴應時,我有點想清楚了。但我只想說謝謝你的回覆,我很感激! –

0

將每個數組值綁定到每個div /元素將導致可怕的性能問題。有一個更好的方式來做到這一點,這是有約束力的負載事件值到div /元素

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

瞭解更多您可能感興趣這篇文章事件delegate

+0

你好@rselvaganesh,所以我把我的克隆過程放在哪裏,但是克隆過程仍然不清楚,請把它放在哪裏...... –

相關問題