JS版网站风格切换实例代码


Posted in Javascript onOctober 06, 2008

样式表连接,设3种风格,把你要改变的图片背景等写入样式表。

<link media="screen" href="/css/default.css" rel="stylesheet" type="text/css" title="default" /> 
<link media="screen" href="/css/blue.css" rel="alternate stylesheet" type="text/css" title="blue" /> 
<link media="screen" href="/css/orange.css" rel="alternate stylesheet" type="text/css" title="orange" />

第一个是默认样式表。
脚本--作者:dynamicdrive.com
使用协议:http://www.dynamicdrive.com/notice.htm
//Style Sheet Switcher version 1.0 Nov 9th, 2005 
//Author: Dynamic Drive: http://www.dynamicdrive.com 
//Usage terms: http://www.dynamicdrive.com/notice.htm 
function getCookie(Name) { 
var re=new RegExp(Name+"=[^;]+", "i"); //construct RE to search for target name/value pair 
if (document.cookie.match(re)) //if cookie found 
return document.cookie.match(re)[0].split("=")[1] //return its value 
return null 
} 
function setCookie(name, value, days) { 
var expireDate = new Date() 
//set "expstring" to either future or past date, to set or delete cookie, respectively 
var expstring=(typeof days!="undefined")? expireDate.setDate(expireDate.getDate()+parseInt(days)) : expireDate.setDate(expireDate.getDate()-5) 
document.cookie = name+"="+value+"; expires="+expireDate.toGMTString()+"; path=/"; 
} 
function deleteCookie(name){ 
setCookie(name, "moot") 
} 
function setStylesheet(title) { 
var i, cacheobj 
for(i=0; (cacheobj=document.getElementsByTagName("link")[i]); i++) { 
if(cacheobj.getAttribute("rel").indexOf("style") != -1 && cacheobj.getAttribute("title")) { 
cacheobj.disabled = true 
if(cacheobj.getAttribute("title") == title) 
cacheobj.disabled = false //enable chosen style sheet 
} 
} 
} 
function chooseStyle(styletitle, days){ 
if (document.getElementById){ 
setStylesheet(styletitle) 
setCookie("mysheet", styletitle, days) 
} 
} 
var selectedtitle=getCookie("mysheet") 
if (document.getElementById && selectedtitle!=null) //load user chosen style sheet if there is one stored 
setStylesheet(selectedtitle)

调用方法
<a title="默认风格" href="javascript:chooseStyle('default',5)">默认风格</a> 
<a title="橙色风格" href="javascript:chooseStyle('orange',5)">橙色风格</a> 
<a title="蓝色风格" href="javascript:chooseStyle('blue',5)">蓝色风格</a>

注意:title内容改成你样式表的名字,我这里是设定为5天。
Javascript 相关文章推荐
javascript数组组合成字符串的脚本
Jan 06 Javascript
选择TreeView控件的树状数据节点的JS方法(jquery)
Feb 06 Javascript
php上传图片并给图片打上透明水印的代码
Jun 07 Javascript
关于递归运算的顺序测试代码
Nov 30 Javascript
探索Emberjs制作一个简单的Todo应用
Nov 07 Javascript
JS获取单击按钮单元格所在行的信息
Jun 17 Javascript
JavaScript中rem布局在react中的应用
Dec 09 Javascript
使用CSS+JavaScript或纯js实现半透明遮罩效果的实例分享
May 09 Javascript
js技巧之十几行的代码实现vue.watch代码
Jun 09 Javascript
vue项目强制清除页面缓存的例子
Nov 06 Javascript
vue中用 async/await 来处理异步操作
Jul 18 Javascript
你不知道的SpringBoot与Vue部署解决方案
Nov 09 Javascript
判断JavaScript对象是否可用的最正确方法分析
Oct 03 #Javascript
IE与firefox之jquery用法区别
Oct 03 #Javascript
jquery的颜色选择插件实例代码
Oct 02 #Javascript
初学JavaScript_03(ExtJs Grid的简单使用)
Oct 02 #Javascript
JavaScript下申明对象的几种方法小结
Oct 02 #Javascript
初学JavaScript第二章
Sep 30 #Javascript
select组合框option的捕捉实例代码
Sep 30 #Javascript
You might like
大家在抢红包,程序员在研究红包算法
2015/08/31 PHP
windows平台中配置nginx+php环境
2015/12/06 PHP
PHP7+Nginx的配置与安装教程详解
2016/05/10 PHP
PhpStorm本地断点调试的方法步骤
2018/05/21 PHP
php实现二叉树中和为某一值的路径方法
2018/10/14 PHP
Javascript学习笔记9 prototype封装继承
2010/01/11 Javascript
JS动态获取当前时间,并写到特定的区域
2013/05/03 Javascript
javascript模拟地球旋转效果代码实例
2013/12/02 Javascript
屏蔽IE弹出&quot;您查看的网页正在试图关闭窗口,是否关闭此窗口&quot;的方法
2013/12/31 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
jQuery简单实现列表隐藏和显示效果示例
2016/09/12 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
2017/05/26 Javascript
jQuery复合事件结合toggle()方法的用法示例
2017/06/10 jQuery
JavaScript循环_动力节点Java学院整理
2017/06/28 Javascript
node.js自动上传ftp的脚本分享
2018/06/16 Javascript
Vue开发中常见的套路和技巧总结
2020/11/24 Vue.js
详解js创建对象的几种方式和对象方法
2021/03/01 Javascript
python回调函数用法实例分析
2015/05/09 Python
Python pyinotify日志监控系统处理日志的方法
2018/03/08 Python
Python基于FTP模块实现ftp文件上传操作示例
2018/04/23 Python
Python 迭代,for...in遍历,迭代原理与应用示例
2019/10/12 Python
解决python彩色螺旋线绘制引发的问题
2019/11/23 Python
pytorch 图像中的数据预处理和批标准化实例
2020/01/15 Python
Spark处理数据排序问题如何避免OOM
2020/05/21 Python
python--shutil移动文件到另一个路径的操作
2020/07/13 Python
python 装饰器的实际作用有哪些
2020/09/07 Python
Python SMTP发送电子邮件的示例
2020/09/23 Python
什么造成了Java里面的异常
2016/04/24 面试题
strlen的几种不同实现方法
2013/05/31 面试题
环境科学专业个人求职信
2013/12/15 职场文书
个人近期表现材料
2014/02/11 职场文书
文明风采获奖感言
2014/02/18 职场文书
教师个人师德总结
2015/02/06 职场文书
实习员工转正的评语汇总,以备不时之需
2019/12/17 职场文书
SpringBoot 集成短信和邮件 以阿里云短信服务为例
2022/04/22 Java/Android
python实现学生信息管理系统(面向对象)
2022/06/05 Python