2012-09-10 26 views
0

我的頁面是使用兩個樣式表form.css和styles.css設計的,我想根據域名動態設置它們的路徑。如何在不使用Page.Theme屬性的情況下設置頁面樣式和主題?

這是我寫的代碼動態改變它們。它可以工作,但在切換到新主題前發生閃爍,我如何設置頁面樣式和主題而不使用Page.Theme屬性?

在客戶端

$(document).ready(function() { 
    function preloadFunc() { 
     var foldername = '<%= theme%>'; 
     $('#lnkCssForm').attr('href', 'css/' + foldername + '/form.css'); 
     $('#lnkCssStyles').attr('href', 'css/' + foldername + '/styles.css'); 
    } 
    window.onpaint = preloadFunc(); 
}); 

在服務器端(在頁面上preInit)

theme = Session["domainTheme"].ToString(); 

回答

0

爲什麼要使用JavaScript(還取決於-DOM就緒)這個?難怪這會導致「閃爍」。爲什麼不直接從模板輸出路徑/部分/輸出頭部樣式?

<head> 
    <link rel="stylesheet" type="text/css" href="css/<%= theme %>/form.css" media="all"> 
    <link rel="stylesheet" type="text/css" href="css/<%= theme %>/styles.css" media="all"> 
</head> 

這是什麼原因,你不想使用Page.Theme?這正是這意味着什麼...

相關問題