2013-10-18 43 views
1

我正在跟隨最新的Agile Web Development with Rails 4書籍在第11章(AJAX)中,本書教導我們要使用下面的代碼在「create.js.erb」文件:。jQuery slideDown()沒有動畫(jquery-rails 3.0.4; jquery-ui-rails(4.0.5)

if ($('#cart tr').length == 1) { $('#cart').show('blind', 1000); } 

此代碼導致#cart div來跳了下來,沒有任何內容出現1秒後,沒有滑動效果。

我試過使用slideDown();但是div只是立即出現。出於好奇,我試過slideUp();當div可見時,Voila .Diff滑了起來。

這似乎是一個jQuery錯誤,並想知道是否有其他人遇到過這種情況,或者對我有任何建議。

謝謝。

回答

0

聽起來好像你描述的是一個場景,其中內容通過ajax加載,其中切換不是簡單地顯示已經存在於dom中的內容。是這樣嗎?否則,包裝內的內容是否也隱藏了......或許用css?

你試過slideToggle();爲簡單的DOM顯示/隱藏? ...如果它與Ajax相關,則可能需要延遲觸發切換直到內容本身已加載。

+0

slideToggle()確實有效。內容正在DOM中加載。你認爲動畫後內容是否在DOM中加載? –

+0

我想知道是否是這種情況,但如果slideToggle正在工作,那麼它必須在該事件之前可用。如果一切順利,請不要忘記接受。 –

+0

使用slideToggle()工程(div向上或向下滑動),但.show(「盲」)不會(div立即出現)。任何想法爲什麼? –