如何在不使用Page.Theme属性的情况下设置页面样式和主题



我的页面使用两个样式表form.css和styles.css设计,我想根据域名动态设置它们的路径。

以下是我为动态更改它们而编写的代码。它可以工作,但在切换到新主题之前会出现闪烁。如果不使用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();
});

服务器端(页面预初始化)

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

为什么要使用javascript(以及在dom上)?难怪这会引起"闪烁"。为什么不直接从输出带有样式的头的模板/partial/whatever输出路径?

<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的原因是什么?这正是它的意义。。。

相关内容

  • 没有找到相关文章

最新更新