2015-08-31 63 views
0

我有一個過程爲什麼此過程不添加子元素?

  newRows = JSON.parse(newRowsStr); 
      var wsr = $('#work-sample-row'); 
      for (var i = 0, n = newRows.length; i < n; ++i) 
      { 
       var thisBox = boxHtml; 
       var thisNewRow = newRows[i]; 
       thisBox.find('.work-item-preview-outer').css('background-image', thisNewRow['imageurl']); 
       thisBox.find('.work-title').text(thisNewRow['title']); 
       thisBox.find('.work-descr-short').text(thisNewRow['sumsmall']); 
       wsr.append(thisBox); 
       setTimeout(function(){thisBox.css('opacity','0');}, i * 200) 
      }  

其中

boxHtml = $('<div class="mb-30-for-mobile col-xxs-12 col-xs-6 col-sm-4 col-md-3 col-lg-3 work-column" style="opacity:0;"><a class="work-link-wrap"><div class="work-item-preview-outer"><div class="work-item-preview-inner"><h3 class="work-title"></h3><p class="work-descr-short"></p></div></div></a></div>'); 

,什麼這意味着在循環中要做的就是創建副本的boxHtml,並添加一些文字和樣式,然後使每個這些副本的子女$('#work-sample-row')。我在控制檯中沒有看到任何錯誤,但我也沒有看到孩子被添加。是什麼賦予了?

回答

1

在做thisBox = boxHtml時,您並未創建副本,只是創建了對boxHtml的新引用。如果boxHtml是jQuery包裹的元素,請嘗試thisBox = boxHtml.clone();如果它不是包裹的元素,請執行thisBox = $(boxHtml).clone();

相關問題