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 date对象的减法处理实现代码
Dec 28 Javascript
网页整体变灰白色(兼容各浏览器)实例
Apr 21 Javascript
jQuery原生的动画效果
Jul 10 Javascript
jQuery 弹出层插件(推荐)
May 24 Javascript
仅9张思维导图帮你轻松学习Javascript 就这么简单
Jun 01 Javascript
JavaScript实现相册弹窗功能(zepto.js)
Jun 21 Javascript
解决Vue.js由于延时显示了{{message}}引用界面的问题
Aug 25 Javascript
JS闭包经典实例详解
Dec 20 Javascript
详解VUE前端按钮权限控制
Apr 26 Javascript
Paypal支付不完全指北
Jun 04 Javascript
JS+Canvas实现五子棋游戏
Aug 26 Javascript
ES2020让代码更优美的运算符 (?.) (??)
Jan 04 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
ThinkPHP模板IF标签用法详解
2014/07/01 PHP
浅析PHP程序设计中的MVC编程思想
2014/07/28 PHP
php curl登陆qq后获取用户信息时证书错误
2015/02/03 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
2015/12/21 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
2018/04/08 PHP
JavaScript 模拟用户单击事件
2009/12/31 Javascript
基于jQuery的淡入淡出可自动切换的幻灯插件
2010/08/24 Javascript
drag-and-drop实现图片浏览器预览
2015/08/06 Javascript
node.js require() 源码解读
2015/12/13 Javascript
js仿微信公众平台打标签功能
2017/04/08 Javascript
微信小程序实现多宫格抽奖活动
2020/04/15 Javascript
js实现一个简单的MVVM框架示例
2018/01/15 Javascript
微信小程序使用swiper组件实现层叠轮播图
2018/11/04 Javascript
Python中__new__与__init__方法的区别详解
2015/05/04 Python
Python cx_freeze打包工具处理问题思路及解决办法
2016/02/13 Python
python学习之编写查询ip程序
2016/02/27 Python
Python生成8位随机字符串的方法分析
2017/12/05 Python
python使用minimax算法实现五子棋
2019/07/29 Python
django创建超级用户过程解析
2019/09/18 Python
使用Pandas将inf, nan转化成特定的值
2019/12/19 Python
Django中modelform组件实例用法总结
2020/02/10 Python
python 画条形图(柱状图)实例
2020/04/24 Python
python中常用的数据结构介绍
2021/01/12 Python
Python中正则表达式对单个字符,多个字符和匹配边界等使用
2021/01/27 Python
详解html5 canvas 微信海报分享(个人爬坑)
2018/01/12 HTML / CSS
迪士尼西班牙官方网上商店:ShopDisney西班牙
2020/02/02 全球购物
电子专业求职信
2014/06/19 职场文书
科学发展观活动总结
2014/08/28 职场文书
奉献家乡演讲稿
2014/09/13 职场文书
我的大学四年规划书范文2014
2014/09/26 职场文书
努力学习保证书
2015/02/26 职场文书
Python selenium模拟网页点击爬虫交管12123违章数据
2021/05/26 Python
Windows 11上手初体验:任务栏和开始菜单等迎来大改
2021/11/21 数码科技
nginx rewrite功能使用场景分析
2022/05/30 Servers