2014-07-11 77 views
2

我想爲一個元素創建一個動畫,最初由ng-show="boolDefaultIsFalse"屬性隱藏。ngShow不添加ng顯示類

當我觸發布爾值爲true時,顯示元素,但動畫不播放。

這是因爲元素永遠不會獲得ng-show類。它的確從一個ng-hide課程開始。但是,只要我顯示該元素,那麼該類將被刪除,並且不會添加新的元素。

這裏是我的問題的演示:http://plnkr.co/edit/OkJnxKlp9Ym1mc8CCD05

任何人任何想法如何解決這個問題?


更新

我已經更新了Plunker。

我添加了ng-class指令,手動將ng-show類添加到div。但動畫仍然無法播放。

回答

1

如果包括ngAnimate爲你的模塊的依賴性:

var app = angular('app', ['ngAnimate']); 

角度會自動添加/當施加NG-顯示/ NG隱藏指令刪除以下CSS類:

納克隱藏加
納克隱藏加活性
納克隱藏-除去
納克隱藏-除去活性

要利用此優勢,請將CSS動畫樣式添加到這些類中。

Here is an Demo

0

從NG-節目的角文件:

的元件示或通過去除或添加納克隱藏CSS類到所述元件隱藏。

如果你想動態添加/刪除一個類,你應該使用ng-class。

+0

我的印象是,'NG-show'自動添加'NG-show'或'NG-hide'給一個元素。但我想我錯了。我通過添加'ng-class'指令來更新我的Plunker。當我按下鏈接時,它現在有'ng-show'類。但動畫仍然不播放 – Vivendi

+0

在這種情況下,這似乎是你的CSS問題。 –

+0

是的,但它對'ng-include'很有效(請參閱更新的重定向器)。我不明白爲什麼這不適合'ng-show'。 – Vivendi