2013-05-15 26 views
0

我試圖找到最好的方式來調用5秒的樣式表更改或一組時間然後返回到默認值。但是,我希望它淡入到風格,然後淡出默認。Jquery CSS淡入和淡出不同的css文件

jQuery('head').append('<link id="skinstyle" rel="stylesheet" href="css/style.'+s+'.css" type="text/css" />').fadeto(2000); 

多數民衆贊成我是如何努力做到這一點,但它只是改變不退色。

這可能嗎?

+0

http://stackoverflow.com/questions/10982006/fade-from-one-stylesheet-to-the-other可能的重複 – PlantTheIdea

回答

0

兩件事:

  1. 您必須設置不透明度爲.fadeTo()功能。像.fadeTo(miliseconds, opacity)
  2. .fadeTo()作品只爲視覺元素,你不能fade一個<link>,一個<script><meta>
0

fadeTo()只是改變了元素的不透明度,有什麼我假設你正在試圖做的是替身給定CSS選擇器(類等)的不同CSS規則,併爲變化設置動畫。所以如果某個課程從100px的高度變爲200px,那麼您就可以使兩者之間的差異變成動畫。

不幸的是,你需要依賴animate()來做這樣的事情,而且它不能在像這樣的鏈接CSS元素上工作。 jQuery本身沒有任何功能可以做你想做的事情。

但是我可能會提出一個替代方案。如果使用jQueryUI提供的適當擴展,則可以使用switchClass()方法更改具有動畫屬性的元素類。雖然對於這種情況,您需要實際更改類名稱,而不僅僅是使用新樣式表覆蓋類屬性。