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 10 Javascript
js一组验证函数
Dec 20 Javascript
JavaScript 调试器简介
Feb 21 Javascript
DOM Scripting中的图片切换[兼容Firefox]
Jun 12 Javascript
JavaScript中圆括号()和方括号[]的特殊用法疑问解答
Aug 06 Javascript
通过url查找a元素应用案例
Apr 29 Javascript
TypeScript 学习笔记之基本类型
Jun 19 Javascript
jQuery中 delegate使用的问题
Jul 03 Javascript
Jquery跨浏览器文本复制插件Zero Clipboard的使用方法
Feb 28 Javascript
JS修改地址栏参数实例代码
Jun 14 Javascript
原生JS实现几个常用DOM操作API实例
Jan 19 Javascript
实现图片首尾平滑轮播(JS原生方法—节流)
Oct 17 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
漂亮但不安全的CTB
2006/10/09 PHP
smarty+adodb+部分自定义类的php开发模式
2006/12/31 PHP
windows7下安装php的php-ssh2扩展教程
2014/07/04 PHP
php使用include 和require引入文件的区别
2017/02/16 PHP
PHP实现的简单留言板功能示例【基于thinkPHP框架】
2018/12/07 PHP
jquery事件机制扩展插件 jquery鼠标右键事件
2011/12/21 Javascript
web网页按比例显示图片实现原理及js代码
2013/08/09 Javascript
javascript使用正则控制input输入框允许输入的值方法大全
2014/06/19 Javascript
JavaScript中iframe实现局部刷新的几种方法汇总
2016/01/06 Javascript
jquery.multiselect多选下拉框实现代码
2016/11/11 Javascript
js实现简单的获取验证码按钮效果
2017/03/03 Javascript
浅谈JS中的反柯里化( uncurrying)
2017/08/17 Javascript
vue组件父子间通信之综合练习(聊天室)
2017/11/07 Javascript
浅谈vue自定义全局组件并通过全局方法 Vue.use() 使用该组件
2017/12/07 Javascript
jquery插件开发模式实例详解
2019/07/20 jQuery
[07:27]DOTA2卡尔工作室 英雄介绍水晶室女篇
2013/06/21 DOTA
[02:02]DOTA2英雄基础教程 斯拉达
2013/12/11 DOTA
[15:15]教你分分钟做大人:狙击手
2014/10/30 DOTA
Python 中 Meta Classes详解
2016/02/13 Python
python三引号输出方法
2019/02/27 Python
详解python读取和输出到txt
2019/03/29 Python
Python3+Appium实现多台移动设备操作的方法
2019/07/05 Python
Python 线程池用法简单示例
2019/10/02 Python
python+requests接口压力测试500次,查看响应时间的实例
2020/04/30 Python
python TCP包注入方式
2020/05/05 Python
Flask处理Web表单的实现方法
2021/01/31 Python
日本最大的眼镜购物网站:Oh My Glasses
2016/11/13 全球购物
澳大利亚药房在线:ThePharmacy
2017/10/04 全球购物
ALDO美国官网:加拿大女鞋品牌
2018/12/28 全球购物
化工专业个人的求职信范文
2013/11/28 职场文书
单位消防安全制度
2014/01/12 职场文书
人民调解员培训方案
2014/06/05 职场文书
大学生党员自我剖析材料
2014/10/06 职场文书
2015年教学管理工作总结
2015/05/20 职场文书
Feign调用全局异常处理解决方案
2021/06/24 Java/Android
《传颂之物 虚伪的假面》BD发售宣传CM公开
2022/04/04 日漫