huangf714

首先将easyui的样式文件加入一个ID,这里命名为easyuiTheme,然后在样式文件下面加入一个JS文件

 

<script type="text/javascript" charset="UTF-8" src="jslib/jquery-easyui-1.2.5/jquery-1.7.1.min.js"></script>

<script type="text/javascript" charset="UTF-8" src="jslib/jquery.cookie.js"></script>

<link id="easyuiTheme" rel="stylesheet" type="text/css" href="jslib/jquery-easyui-1.2.5/themes/gray/easyui.css">
<script type="text/javascript" charset="UTF-8" src="jslib/changeEasyuiTheme.js"></script>
<link rel="stylesheet" type="text/css" href="jslib/jquery-easyui-1.2.5/themes/icon.css">
<script type="text/javascript" charset="UTF-8" src="jslib/jquery-easyui-1.2.5/jquery.easyui.min.js"></script>
<script type="text/javascript" charset="UTF-8" src="jslib/jquery-easyui-1.2.5/locale/easyui-lang-zh_CN.js"></script>

 

changeEasyuiTheme.js文件的内容是

 

function changeThemeFun(themeName) {/* 更换主题 */
var $easyuiTheme = $(\'#easyuiTheme\');
var url = $easyuiTheme.attr(\'href\');
var href = url.substring(0, url.indexOf(\'themes\')) + \'themes/\' + themeName + \'/easyui.css\';
$easyuiTheme.attr(\'href\', href);

var $iframe = $(\'iframe\');
if ($iframe.length > 0) {
for ( var i = 0; i < $iframe.length; i++) {
var ifr = $iframe[i];
$(ifr).contents().find(\'#easyuiTheme\').attr(\'href\', href);
}
}

$.cookie(\'easyuiThemeName\', themeName, {
expires : 7
});
};
if ($.cookie(\'easyuiThemeName\')) {
changeThemeFun($.cookie(\'easyuiThemeName\'));
}

 

jquery.cookie.js的内容是

 

jQuery.cookie = function (key, value, options) {

// key and value given, set cookie...
if (arguments.length > 1 && (value === null || typeof value !== "object")) {
options = jQuery.extend({}, options);

if (value === null) {
options.expires = -1;
}

if (typeof options.expires === \'number\') {
var days = options.expires, t = options.expires = new Date();
t.setDate(t.getDate() + days);
}

return (document.cookie = [
encodeURIComponent(key), \'=\',
options.raw ? String(value) : encodeURIComponent(String(value)),
options.expires ? \'; expires=\' + options.expires.toUTCString() : \'\', // use expires attribute, max-age is not supported by IE
options.path ? \'; path=\' + options.path : \'\',
options.domain ? \'; domain=\' + options.domain : \'\',
options.secure ? \'; secure\' : \'\'
].join(\'\'));
}

// key and possibly options given, get cookie...
options = value || {};
var result, decode = options.raw ? function (s) { return s; } : decodeURIComponent;
return (result = new RegExp(\'(?:^|; )\' + encodeURIComponent(key) + \'=([^;]*)\').exec(document.cookie)) ? decode(result[1]) : null;
};

 

使用的时候

 

changeThemeFun(\'default\');
changeThemeFun(\'gray\');

分类:

技术点:

相关文章: