//默认为黑色主题,全局变量
var saveThemeColor = {
'Name': 'ThemeColor',
'Color': 'darktheme'
}
var storage = getLocalStorage();
// 判断用户是否已有自己选择的主题风格
if (storageLoad('ThemeColor')) {
var themecolor = storageLoad('ThemeColor').Color;
$('body').attr('class',themecolor);
} else {
storageSave(saveThemeColor);
$('body').attr('class', 'darktheme');
}
// 本地缓存
function storageSave(obj) {
storage.setItem(obj.Name, JSON.stringify(obj));
}
function storageLoad(objectName) {
if (storage.getItem(objectName)) {
return JSON.parse(storage.getItem(objectName));
} else {
return false;
}
}
//兼容只支持globalStorage的浏览器
function getLocalStorage(){
if(typeof localStorage == 'object'){
return localStorage;
}else if (typeof globalStorage == 'object') {
return globalStorage[location.host];
} else {
throw new Error('Local storage not available');
}
}
//切换主题
$('.themeli').find('span').on('click',function(){
$('body').attr('class', $(this).attr('data-color'))
saveThemeColor.Color = $(this).attr('data-color');
// 保存选择项
storageSave(saveThemeColor);
});