2012-12-06 38 views
1

我正在將html附加到ajax成功函數上的<ul>Ajax成功將HTML添加到fadeIn()

HTML

<ul id="revisionList"> 
    <!-- ajax.js will insert ordered list here based on number of revisions --> 
</ul> 

阿賈克斯成功

success: function(json) 
     { 
      /* 
      If successful build the list of revision links 
      Links include link that will load images in next tab 
      */ 

      //loop through revisions and display 
      for(i = 0, j = json.revision_count.length; i < j; i++) { 
       //count for revision number 
       var k = i + 1; 
       //revision number, does not match k 
       var revisionID = json.revision_count[i].layout; 
       $('#revisionList').append(
        "<li><a onclick=\"initEditRevision(" + galleryID + ',' + revisionID + ")\" href=\"#editRev\" data-toggle=\"tab\">Revision " + k + "</a></li>" 
       ); 
      } 

     } 

如何去列表建成後整個<ul>褪色?

回答

3

試試這個

success: function(json) { 
    var $list = $('#revisionList'); 
     $list.hide(); // Hide Here 
    for (i = 0, j = json.revision_count.length; i < j; i++) { 
     var k = i + 1; 
     var revisionID = json.revision_count[i].layout; 
     $list 
      .append("<li><a onclick=\"initEditRevision(" + galleryID + ',' + 
        revisionID + ")\" href=\"#editRev\" 
        data-toggle=\"tab\">Revision " + k + "</a></li>"); 
    } 
    $list.fadeIn('slow'); // Fade In here 
}​ 
+2

你爲什麼躲在for循環中!它正在反覆做 – epascarello

+0

@epascarello ..謝謝指出它..在看過去:) –

1
for (... 

} 
$("#revisionList").hide().fadeIn(); 

或者你可以在for循環之前將其隱藏;無論什麼最好。

0

如果您不想使用CSS,您必須首先使用CSS display屬性或使用樣式屬性來隱藏它。

#revisionList{display: none;} 

OR

<ul id="revisionList" style="display: none;"> 

然後完全appnded所有li年代後褪色英寸

$("#revisionList").fadeIn(500);