動(dòng)態(tài)CSS,換膚技術(shù)
更新時(shí)間:2006年06月26日 00:00:00 作者:
見的例子就是:一個(gè)站點(diǎn)上有多個(gè)頁(yè)面樣式提供瀏覽者選擇。
同時(shí),在選擇了某樣式后,再次打開該頁(yè)面時(shí),將仍然保持該樣式。
自然會(huì)想到了Cookie技術(shù)
以下是程序代碼:
<HTML>
<HEAD>
<link ID="skin" rel="stylesheet" type="text/css">
<TITLE>換膚技術(shù)</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;
//以下設(shè)置COOKIES時(shí)間為1年,自己隨便設(shè)置該時(shí)間..
SetCookie("nowskin",url,expdate,"/",null,false);
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<P>請(qǐng)選擇下面的下拉菜單測(cè)試換膚效果</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>
<br>
<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[i])
document.write("<option value=\""+csss[i]+"\" selected>"+csss[i]+"樣式單文件</option>");
else
document.write("<option value=\""+csss[i]+"\">"+csss[i]+"樣式單文件</option>");
</script>
</select>
</BODY>
</HTML>
同時(shí),在選擇了某樣式后,再次打開該頁(yè)面時(shí),將仍然保持該樣式。
自然會(huì)想到了Cookie技術(shù)
以下是程序代碼:
<HTML>
<HEAD>
<link ID="skin" rel="stylesheet" type="text/css">
<TITLE>換膚技術(shù)</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;
//以下設(shè)置COOKIES時(shí)間為1年,自己隨便設(shè)置該時(shí)間..
SetCookie("nowskin",url,expdate,"/",null,false);
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<P>請(qǐng)選擇下面的下拉菜單測(cè)試換膚效果</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>
<br>
<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[i])
document.write("<option value=\""+csss[i]+"\" selected>"+csss[i]+"樣式單文件</option>");
else
document.write("<option value=\""+csss[i]+"\">"+csss[i]+"樣式單文件</option>");
</script>
</select>
</BODY>
</HTML>
相關(guān)文章
ASP編程入門進(jìn)階(二十):ADO組件之分頁(yè)程序
ASP編程入門進(jìn)階(二十):ADO組件之分頁(yè)程序...2007-01-01ASP編程入門進(jìn)階(七):內(nèi)置對(duì)象Server
ASP編程入門進(jìn)階(七):內(nèi)置對(duì)象Server...2007-01-01利用ASP發(fā)送和接收XML數(shù)據(jù)的處理方法
因?yàn)橐鲆苿?dòng)夢(mèng)網(wǎng)WAP的一些接口,所以要用到這種方式,接下來會(huì)有ASP.net版本的,這個(gè)是ASP版本的,利用了MSXML2.XMLHTTP對(duì)像2006-06-06ASP編程入門進(jìn)階(九):內(nèi)置對(duì)象Application
ASP編程入門進(jìn)階(九):內(nèi)置對(duì)象Application...2007-01-01127.0.0.1無法訪問,沒有權(quán)限: GetObject
127.0.0.1無法訪問,沒有權(quán)限: GetObject...2007-02-02asp向數(shù)據(jù)庫(kù)插入數(shù)據(jù)的方法rs
用adodb.recordset實(shí)現(xiàn)數(shù)據(jù)庫(kù)的插入方法2008-04-04