这个网站风格切换除了带记忆功能外,还可设定保持时间,比如5天-180天,过了时间就自动恢复到默认样式表。
样式表连接,设3种风格,把你要改变的图片背景等写入样式表。
- <link rel="stylesheet" type="text/css" href="css/bg1.css" title="bg1" />
- <link rel="stylesheet" type="text/css" href="css/bg2.css" title="bg2" />
- <link rel="stylesheet" type="text/css" href="css/bg3.css" title="bg3" />
第一个是默认样式表。
JS代码如下:
- //Style Sheet Switcher version 1.0 Nov 9th, 2005
- //Author: Dynamic Drive: http://www.
- //Usage terms: http://www./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('bg1',5)">默认风格</a>
- <a title="橙色风格" href="javascript:chooseStyle('bg2',5)">橙色风格</a>
- <a title="蓝色风格" href="javascript:chooseStyle('bg3',5)">蓝色风格</a>
注意:title内容改成你样式表的名字,我这里是设定为5天。