2012-03-06 75 views
1

我有這樣的代碼,其工作原理:jQuery的動畫表的tbody標籤

$('a.click_more').click(function() { 
      $(this).parents('table.city_table').children('tbody').toggle(); 
    }); 

我試圖創建一個漂亮流暢的動畫顯示和隱藏的表元素。我試過這個,但它儘管延遲了一點,仍然與頂層代碼一樣。可能是我設定的半秒時間。

$('a.click_more').click(function() { 
     $(this).parents('table.city_table').children('tbody').animate({height:'toggle'}, 500); 
    }); 

有沒有人完成動畫表行,單元格,列等或有任何建議?

我已經創建,如果有人正在擺弄的代碼的jsfiddle:http://jsfiddle.net/BHqSM/1/

+0

您的jQuery是否成功?如果是這樣,問題是什麼? – hohner 2012-03-06 19:34:35

+0

你在尋找什麼樣的「漂亮流暢的動畫」?淡入/淡出?向上/向下滑動?或者是什麼? – 2012-03-06 19:35:03

+0

只是一個標準的幻燈片向上/向下動畫。 – 2012-03-06 19:39:55

回答

0

嘗試slideToggle()功能:

$('a.click_more').click(function() { 
    $(this).parents('table.city_table').children('tbody').slideToggle('slow'); 
}); 
+0

也試過了。產生與第二串代碼相同的結果。 – 2012-03-06 19:39:34

+0

嘗試添加'slow'作爲持續時間。我編輯了我的答案以反映這一變化。 – 2012-03-06 19:41:39

+0

另外,沒有運氣。如果我也提供了我的表格結構會有幫助嗎? – 2012-03-06 19:42:32

0

當你不提你是什麼樣的轉型尋找,很難給你一個很好的例子。不過,jQuery提供了一些轉換,供您使用開箱即用。例如,您可以使用.fadeToggle()淡入淡出元素或.slideToggle()以向上/向下滑動元素,而不是使用.toggle()(僅在塊和無)之間切換顯示。

+0

我已經嘗試過所有。我只想讓基本的點擊幻燈片顯示/隱藏動畫。問題在於它不適用於表格。我想,如果我可以切換與我可以追加動畫。我的意思是沒有寬度或高度設置的表格會轉換爲其周圍的內容,並隨時與瀏覽器窗口保持一致,以便他們爲什麼不能動畫。 – 2012-03-06 19:54:39

0

表格元素動畫效果不好,並且沒有繞過它。例如,動畫行的唯一平滑方法是將內部td內容封裝在div中,併爲div的動畫製作