找回密码
 注册
搜索
热搜: java php web
查看: 1999|回复: 6

利用动态CSS实现页面换肤

[复制链接]
发表于 2009-1-25 16:06:33 | 显示全部楼层 |阅读模式
平时,我们浏览很多BLOG时经常见到切换页面的功能,常见的是:一个站点上有多个页面样式提供浏览者选择。同时,在选择了某样式后,再次打开该页面时,将仍然保持该样式。那么如何实现这种功能呢,一般都会想到了Cookie技术

下面是HTML代码部分另外再加需要的CSS文件就可以使用了,希望跟大家学习
复制内容到剪贴板
代码:
<HTML>
<HEAD>
<link ID="skin" rel="stylesheet" type="text/css">
<TITLE>换肤技术</TITLE>
<SCRIPT LANGUAGE=javascript>
<!--
function SetCookie(name,value){
   var argv=SetCookie.arguments;
   var argc=SetCookie.arguments.length;
   var expires=(2<argc)?argv[2]:null;
   var path=(3<argc)?argv[3]:null;
   var domain=(4<argc)?argv[4]:null;
   var secure=(5<argc)?argv[5]:false;
   document.cookie=name+"="+escape(value)+((expires==null)?"""; expires="+expires.toGMTString()))+((path==null)?"""; path="+path))+((domain==null)?"""; domain="+domain))+((secure==true)?"; secure":"");
}

function GetCookie(Name) {
   var search = Name + "=";
   var returnvalue = "";
   if (document.cookie.length > 0) {
      offset = document.cookie.indexOf(search);
      if (offset != -1) {   
         offset += search.length;
         end = document.cookie.indexOf(";", offset);            
         if (end == -1)
            end = document.cookie.length;
         returnvalue=unescape(document.cookie.substring(offset,end));
      }
   }
   return returnvalue;
}

var thisskin;
thisskin=GetCookie("nowskin");
if(thisskin!="")
   skin.href=thisskin;
else
   skin.href="css.css";

function changecss(url){
   if(url!=""){
      skin.href=url;
      var expdate=new Date();
      expdate.setTime(expdate.getTime()+(24*60*60*1000*30));
      //expdate=null;
                  //以下设置COOKIES时间为1年,自己随便设置该时间..
      SetCookie("nowskin",url,expdate,"/",null,false);
   }
}
//-->
</SCRIPT>
</HEAD>
<BODY>

<>请选择下面的下拉菜单测试换肤效果</P>

<a href=# onclick="changecss('css.css')">css.css</a>
<a href=# onclick="changecss('css1.css')">css1.css</a>
<a href=# onclick="changecss('css2.css')">css2.css</a>
<a href=# onclick="changecss('css3.css')">css3.css</a>



<select onchange="changecss(this.value)">
<option>选择样式单文件</option>
<script language="javascript">
var csss=new Array();
csss[0]="css.css";
csss[1]="css1.css";
csss[2]="css2.css";
csss[3]="css3.css";
var i;
for(i=0;i<4;i++)
   if(thisskin==csss)
      document.write("<option value=\""+csss+"\" selected>"+csss+"样式单文件</option>");
   else
      document.write("<option value=\""+csss+"\">"+csss+"样式单文件</option>");
</script>
</select>
</BODY>
</HTML>
欢迎大家多多指教
发表于 2009-1-25 17:48:29 | 显示全部楼层
cool things
回复

使用道具 举报

发表于 2009-1-25 17:39:48 | 显示全部楼层
非常感謝大大的發表
回复

使用道具 举报

发表于 2009-1-25 17:40:37 | 显示全部楼层
回复

使用道具 举报

发表于 2009-1-25 16:55:26 | 显示全部楼层
Thnks
回复

使用道具 举报

发表于 2009-1-25 17:34:17 | 显示全部楼层
似乎不是css 做的 主要工作是js做的什么是优秀的程序员呢
回复

使用道具 举报

发表于 2009-1-25 17:44:03 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|软晨网(RuanChen.com)

GMT+8, 2024-9-20 13:33

Powered by Discuz! X3.5

Copyright © 2001-2023 Tencent Cloud.

快速回复 返回顶部 返回列表