0

我的页面是使用两个样式表设计的,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();
4

1 回答 1

0

你为什么要为此使用javascript(以及on-dom-ready)?难怪这会导致“闪烁”。为什么不直接从模板/部分/输出带有样式的头部的任何东西输出路径?

<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?这正是它的意义所在……

于 2012-10-05T08:50:03.210 回答