2014-01-20 32 views
3

這是一個簡單的引導警報:顯示先前隱藏的引導警報

<div id="alert_recover_ok" class="alert alert-success hidden"> 
    <a class="close" data-dismiss="alert" href="#">&#x2716;</a> 
    Please check your email for recovery instructions 
</div> 

正如你所看到的,它是隱藏的(通過類名)。現在,我試圖表現出來:

$('#alert_recover_ok').fadeIn(); 

什麼也沒有發生......這似乎是工作的唯一的解決辦法是:

$('#alert_recover_ok').removeClass('hidden'); 

...但當然,這不會有效果好的淡入淡出效果。有任何想法嗎?

+0

試圖像'$( '#alert_recover_ok')。隱藏() 。.removeClass( '隱藏')faseIn();'? jQuery可能會正確地清除隱藏的類。 – Kami

回答

5

創建自己的hidden類。

自舉類.hidden是如下,這就是爲什麼只是.fadeIn();無法正常工作......

.hidden { 
    display: none!important; 
    visibility: hidden!important; 
} 

所以,你可以創建自己的hidden類。

.hide-me{ 
    display: none; 
} 

用此代替hidden然後.fadeIn();會工作。

DEMO

+0

偉大的解決方案,謝謝! – andufo

+0

注意:在更新版本的'bootstrap.css'中,'hidden'規則不再包含'visibility'屬性。所以它應該是安全的使用。 –

1

發生這種情況是因爲fadeIn()不會刪除您的類,該類繼續隱藏該元素。

這是個雜牌組裝電腦,但它應該工作:

$('#alert_recover_ok').removeClass('hidden').hide().fadeIn(); 
1

從引導CSS刪除.hidden類,並用自己的自定義隱藏類像下面..

.hidden{display:none;} 
相關問題