2011-04-09 77 views
0

我想知道是否有任何技巧,有兩個版本的美樂家(本質上)加載在一個頁面上?jQuery UI多個CSS文件

我們應用程序中的一個頁面使用jQuery UI對話框來收集特定函數的用戶輸入。爲此,我們用themeroller工具設計了這些對話框。

在同一頁面上,我們有更復雜的對話框,我們將HTML標記和JS標記爲。 (我們提供了設計的PSD)我們使用的公司也使用了jQuery UI對話框,併爲所有ui-dialog類編寫了自定義類。

當jQuery對話框被創建時,這些類被添加到標記中,但現在存在衝突的CSS。有沒有辦法通過「選項」或其他方式向對話腳本提供css類名稱。

有關如何使用這些衝突的CSS文件的任何想法?我也問過簽約公司,但認爲這裏的問題可能會爲我提供一些好處。

* 編輯: *現在看看jQuery UI對話框源代碼。我認爲修改插件將類名稱作爲選項並不難。這樣我就可以運行一個帶有標準類名的對話框,從我們的Themeroller CSS和另一個帶有自定義類名的對話框中拉出。有沒有人做過這個?

謝謝!

+0

你可以控制css文件加載的順序。後者的css文件將覆蓋較舊的文件 – 2011-04-09 19:47:21

+0

正確,但我需要.ui-dialog來表示兩種不同的東西。或者,更好的是,我需要能夠告訴其中一個對話插件使用不同的類名稱進行樣式設計。 – BZink 2011-04-09 19:48:55

+0

在這種情況下,您將不得不爲不同的頁面使用不同的CSS。 – 2011-04-09 19:57:55

回答

2

當您在jQuery UI站點上創建自己的整合器包時,它允許您設置一個CSS範圍---它位於高級主題設置下。

這允許您構建自定義的jQuery UI CSS規則,以便僅在主題將在其中工作的頁面的特定區域內工作。通過稍微調整(最有可能使用jQuery),可以在CSS範圍動態地和/或同時使用多個jQuery UI主題,而無需修改您的CSS文件。 :d

jQuery UI download page(檢查右側邊欄上的高級主題選項)

這意味着你可能得重新創建的ThemeRoller包,但至少它的方式jQuery UI的官方支持它,你可以確定它不會因未來的升級而中斷。

+0

嘿,這是行得通的。謝謝! – BZink 2011-04-09 20:33:43