JS使用cookie设置样式的方法


Posted in Javascript onJune 30, 2016

本文实例讲述了JS使用cookie设置样式的方法。分享给大家供大家参考,具体如下:

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);
  }
};

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JS中style属性
Oct 11 Javascript
Javascript面象对象成员、共享成员变量实验
Nov 19 Javascript
Google Dart编程语法和基本类型学习教程
Nov 27 Javascript
Javascript原型链的原理详解
Jan 05 Javascript
js和jq使用submit方法无法提交表单的快速解决方法
May 17 Javascript
JS+CSS3实现超炫的散列画廊特效
Jul 16 Javascript
BootstrapTable+KnockoutJS自定义T4模板快速生成增删改查页面
Aug 01 Javascript
AngularJs入门教程之环境搭建+创建应用示例
Nov 01 Javascript
Javascript 制作图形验证码实例详解
Dec 22 Javascript
浅谈js算法和流程控制
Dec 29 Javascript
关于Bootstrap按钮组件消除黄框的方法
May 19 Javascript
浅谈node中的exports与module.exports的关系
Aug 01 Javascript
浅谈js和css内联外联注意事项
Jun 30 #Javascript
js传值后台中文出现乱码的解决方法
Jun 30 #Javascript
jQuery绑定自定义事件的魔法升级版
Jun 30 #Javascript
jQuery Ajax 上传文件处理方式介绍(推荐)
Jun 30 #Javascript
关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
Jun 30 #Javascript
浅谈js图片前端预览之filereader和window.URL.createObjectURL
Jun 30 #Javascript
浅谈JS中json数据的处理
Jun 30 #Javascript
You might like
php 操作调试的方法
2012/07/12 PHP
PHP积分兑换接口实例
2015/02/09 PHP
百万级别知乎用户数据抓取与分析之PHP开发
2015/09/28 PHP
yii2.0实现pathinfo的形式访问的配置方法
2016/04/06 PHP
PHP日志LOG类定义与用法示例
2018/09/06 PHP
document对象execCommand的command参数介绍
2006/08/01 Javascript
Javascript中暂停功能的实现代码
2007/03/04 Javascript
js png图片(有含有透明)在IE6中为什么不透明了
2010/02/07 Javascript
javaScript复制功能调用实现方案
2012/12/13 Javascript
纯JavaScript实现获取onclick、onchange等事件的值
2014/12/29 Javascript
Bootstrap每天必学之标签与徽章
2015/11/27 Javascript
JS中Json数据的处理和解析JSON数据的方法详解
2016/06/29 Javascript
Angular实现的自定义模糊查询、排序及三角箭头标注功能示例
2017/12/28 Javascript
jquery实现联想词搜索框和搜索结果分页的示例
2018/10/10 jQuery
微信小程序使用component自定义toast弹窗效果
2018/11/27 Javascript
原来JS还可以这样拆箱转换详解
2019/02/01 Javascript
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
2019/03/15 Javascript
Angular请求防抖处理第一次请求失效问题
2019/05/17 Javascript
socket在egg中的使用实例代码详解
2019/05/30 Javascript
基于layui轮播图满屏是高度自适应的解决方法
2019/09/16 Javascript
vue实现全匹配搜索列表内容
2019/09/26 Javascript
vue 添加和编辑用同一个表单,el-form表单提交后清空表单数据操作
2020/08/03 Javascript
[01:27:44]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第一场 1月24日
2021/03/11 DOTA
python动态性强类型用法实例
2015/05/09 Python
python实现彩票系统
2020/06/28 Python
python实现最小二乘法线性拟合
2019/07/19 Python
浅谈keras中loss与val_loss的关系
2020/06/22 Python
HTML5+CSS3实例 :canvas 模拟实现电子彩票刮刮乐代码
2016/12/30 HTML / CSS
先进集体获奖感言
2014/02/13 职场文书
司法建议书范文
2014/05/13 职场文书
银行金融服务方案
2014/06/11 职场文书
行政专员岗位职责说明书
2014/07/30 职场文书
环保项目建议书
2014/08/26 职场文书
加强作风建设心得体会
2014/10/22 职场文书
2016暑期政治学习心得体会
2016/01/23 职场文书
Mysql数据库group by原理详解
2022/07/07 MySQL