2011-11-01 54 views
0

這種類型的問題已經被問了很多次,但我不能找到一個解決方案,適合正是我期待的..CSS阿賈克斯 - 動態加載

我有一個大的基於App阿賈克斯。 Ajax響應包括用於構建頁面和小部件等的HTML和JavaScript文件。

我想通過ajax JavaScript調用,即時加載這些小部件的CSS。可以根據需要動態加載任意數量的CSS文件。最常見的方式(從我可以看到)是在鏈接標記和目標上放置一個id,但由於我包括未定數量的外部樣式表,因此這將不起作用。

任何建議如何解決這個問題,將不勝感激..

我使用道場給力的應用程序,如果它的任何幫助..

感謝

+0

你可以欺騙它; [加載與JS CSS] [1] [1]:http://stackoverflow.com/questions/574944/how-to-load-up-css-files-using-javascript –

回答

0

我們的飛行載荷,也多少小部件在我們的應用。

每個控件都是一個加載了IFRAME的HTML + JS + CSS。

加載IFRAME後,您可以在HEAD中的LINK上循環並將它們導入主頁面。
同樣適用於HTML,在我們的例子中它是一組pure.js模板。

JS在加載時自動擴展主頁中的全局對象。

0

請注意動態加載CSS。 CSS是異步加載的,所以你可以通過在Javascript中做佈局的小部件(比如BorderContainer)獲得競爭條件。

您可以將所有必需的CSS放入帶有導入語句的文件中。例如,從claro.css

@import url("../dijit.css"); 
@import url("../../icons/commonIcons.css"); 
@import url("Common.css"); 
... 

然後使用構建工具來壓縮生產的所有內容。