フロントエンド-easuyuiダイナミック切り替えテーマ
イージーのjspページを紹介します.
cookies
0) {
for(int i = 0; i < cookies.length; i++) {
if(cookies[i].getName().equals("easyuiThemeName")) {
themeName = cookies[i].getValue();
break;
}
}
}
%>
css
初期ロードのjsファイルの追加方法jQuery.cookie = function(key, value, options) {
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(): '',
options.path ? '; path=' + options.path : '',
options.domain ? '; domain=' + options.domain : '',
options.secure ? '; secure' : '' ].join(''));
}
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;
};
/**
*
*/
function changeThemeFun(themeName) {
var $easyuiTheme = $('#easyuiTheme');
var url = $easyuiTheme.attr('href');
console.log(url);
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
});
}
$(document).ready(function(){
if ($.cookie('easyuiThemeName')) {
changeThemeFun($.cookie('easyuiThemeName'));
}
});
テーマの切り替え方法:「実際にあるテーマに沿って作成すればいい」
[ ] :
https://download.csdn.net/download/qq_17522211/10991959
ps:基本jsのほかに、jquery.jdirk.jsも参照してください.jquery.jdirk.js [ ]:
https://download.csdn.net/download/qq_17522211/10991963