2014-02-13 70 views
0

我想顯示一系列由AJAX生成的表格。逐個顯示一系列表格JS

下面是我的JS代碼。

$(function() { 
    $(".buttonTEST").on("click",function(e) { 
     $(".18").toggle("slow", function showNext() { 
      $(this).toggle("slow"); 
      $(this).next("table").toggle("slow", showNext);  
     }); 
    }); 
}); 

18是第一個表的類。 代碼工作正常,但顯示錶並關閉他們WAT太快。 我想要的是在開放關閉和下一個開放關閉之間的一些暫停。 我試圖玩setTimeout,但不斷結束循環和錯誤。

我怎樣才能做到這一點?

+0

12345工作正常,但如果我想有個變化之間暫停什麼? – LefterisL

回答

1
$.fn.slowToggle = function() { 
    item = $(this);   
    item.toggle("slow", function() {       
     setTimeout(function(){ 
      var next = item.next("table"); 
      if(next.length) { 
       next.slowToggle(); 
      } else { 
       return null; 
      } 
     }, 2000); 
    }); 
} 

$(".buttonTEST").on("click",function(e) { 
    $(".18").slowToggle();    
}); 

這裏是fiddle

+0

正如我上面提到的表格顯示正常,除非它們被關閉並且打開方式太快。我如何實現更改之間的「暫停」? – LefterisL

+0

盡我所能讓事情保持乾爽,我做出了需要的改變。然而,讓我感到困惑的是,除非我在函數中包裝'toggleNext',否則這段代碼將不起作用。我不知道這個原因,也可能是一個有效的SO問題本身:) – Eternal1

+0

再次編輯。這一次沒有怪異的包裝。 – Eternal1