2012-06-11 60 views
5

我認爲這可能只是可能的jQuery或JavaScript - 有人可以告訴我是否有可能從一個樣式表的樣式淡出到另一個?如果是這樣,一個人會怎麼做?從一個樣式表到另一個樣式表淡出

謝謝!

+0

的可能重複[jQuery的自動切換樣式表(http://stackoverflow.com/questions/1266275/automatic-jquery-stylesheet-switcher) –

+0

我可以明白爲什麼這有一個downvote,但想着它,它實際上是一個非常靈活的想法。一些合成器具有場景的想法。使用數字值的一組設置,然後您可以按照用戶定義的速率在場景之間隨意切換。在樣式表之間轉換數值的功能看起來很棒。儘管我認爲它必須是自定義腳本。 –

+0

雖然可以交換樣式表,但兩者之間沒有動畫的概念。你必須通過JS手動設置。 –

回答

3

這是我能想到的最好的辦法:

$(body).fadeOut(function() { 
    // Switch the stylesheet 
    // And then: 
    $(this).fadeIn(); 
}); 
+0

謝謝。我將用它作爲永久的解決方案。但是有沒有辦法在兩個樣式表之間直接淡出? –

+0

不,沒有什麼可以計算所有樣式表的每一條規則。如果有的話,它的使用計算量太大。 –

+0

我會這麼想的。這段代碼也很棒。它會爲我的應用程序添加一個不錯的觸摸。 –

0

你可以使用jquery動畫。 但是你必須指定animate命令中的所有規則。

2

試試這個:

的jQuery:

$(document).ready(function() { 
    $("a").click(function() { 
     var rel = $(this).attr("rel"); 
     $('body').hide().fadeIn(1000); 
     $('head').append('<link rel="stylesheet" href="'+rel+'" type="text/css" />'); 
    }); 

}); 

HTML:

<ul> 
    <li><a href="#" rel="layout.css">Change to layout 1</a></li> 
    <li><a href="#" rel="layout2.css">Change to layout 2</a></li> 
    <li><a href="#" rel="layout3.css">Change to layout 3</a></li> 
</ul> 

問候

相關問題