您的位置:首页 > Web前端 > CSS

JS cookie 设置样式

2011-11-27 23:54 435 查看
var styleShow = ["blackgreen", "purple"];
var path = "/";
var StyleSwitch = {
//设置样式
setStyleSheet: function (StyleName) {
var i, a, main;
for (i = 0; (a = document.getElementsByTagName("link")[i]); i++) {
if (a.getAttribute("rel").indexOf("Style") != -1 &&
a.getAttribute("title")) {
a.disabled = true;
if (a.getAttribute("title") == StyleName) {
a.disabled = false;
this.setCookie("Style", StyleName);
}
}
}
},

//获取当前使用样式
getStyleSheet: function () {
var i, a;
for (i = 0; (a = document.getElementsByTagName("link")[i]); i++) {
if (a.getAttribute("rel").indexOf("Style") != -1 && a.getAttribute("title") && !a.disabled) {
return a.getAttribute("title");
}
}
return null;
},

//获取默认样式
getPreferredStyleSheet: function () {

var i, a;
for (i = 0; (a = document.getElementsByTagName("link")[i]); i++) {
if (a.getAttribute("rel").indexOf("Style") != -1
&& a.getAttribute("rel").indexOf("alt") == -1
&& a.getAttribute("title")
) {
return a.getAttribute("title");
}
}
return null;
},

//获取cookie
getCookie: function (name) {

var cookieName = encodeURIComponent(name) + "=",
cookieStart = document.cookie.indexOf(cookieName),
cookieValue = null;

if (cookieStart > -1) {
var cookieEnd = document.cookie.indexOf(";", cookieStart);
if (cookieStart == -1) {
alert(-2);
cookieEnd = document.cookie.length;
}
cookieValue = decodeURIComponent(document.cookie.substring(cookieStart + cookieName.length, cookieEnd));
}

for (var i = 0; i < styleShow.length; i++) {
if (cookieValue == styleShow[i]) {
alert(styleShow[i]);
return styleShow[i];
}
}

return styleShow[0];
},

//生成cookie
//name cookie名
//value 值
//expires 过期时间
//path 路径
setCookie: function (name, value, expires, path, domain, secure) {
var cookieText = encodeURIComponent(name) + "=" + encodeURIComponent(value) + ";";

if (expires instanceof Date) {
cookieText += "expires=" + expires.toGMTString();
}

if (path) {
cookieText += ";path=" + path;
}

if (domain) {
cookieText += ";domain=" + domain;
}

if (secure) {
cookieText += ";secure";
}
document.cookie = cookieText;
},

//重置cookie
unsetCookie: function (name, path, domain, secure) {
this.set(name, "", new Date(0), path, domain, screen);
}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: