转载--自己比较喜欢的代码(姑且不要管用途,先看看结构)

本文提供了一段用于网站皮肤切换的JavaScript代码实现。通过设置不同的皮肤样式并利用cookie记录用户的偏好选择,实现了页面样式的动态变化。代码中包含了事件监听、DOM操作、cookie读写等功能。

function $(obj){
    return document.getElementById(obj);
}
//Download by http://www.codefans.net
var skin={};

skin.addEvent=function(){
    var skins =$("skin").getElementsByTagName("li");
    for (i=0;i<skins.length;i++)
    {
        skins[i].onclick=function(){skin.setSkin(this.id.substring(5))};
    }
}

skin.setCookie=function(n){
    var expires=new Date();
    expires.setTime(expires.getTime()+24*60*60*365*1000);
    var flag="Skin_Cookie="+n;
    document.cookie=flag+";expires="+expires.toGMTString();
}

skin.readCookie=function(){
    var skin=0
    var mycookie=document.cookie;
    var name="Skin_Cookie";
    var start1=mycookie.indexOf(name+"=");
    if(start1==-1){
        skin=0;
    }
    else{
        var start=mycookie.indexOf("=",start1)+1;
        var end=mycookie.indexOf(";",start);
        if(end=-1){
            end=mycookie.length;
        }
        var values= unescape(mycookie.substring(start,end));
        if (values!=null)
        {
            skin=values;
        }
    }
    return skin;
}

skin.setSkin=function(n){
    var skins =$("skin").getElementsByTagName("li");
    for (i=0;i<skins.length;i++)
    {
        skins[i].className="";
    }
    skin.setCookie(n);
    $("skin_"+n).className="selected";
    $("cssfile").href="css/main"+n+".css";
}

window.onload=function(){
    skin.setSkin(skin.readCookie());
    skin.addEvent();
}

posted on 2009-05-08 15:02 ecmascript 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/ecmascript/archive/2009/05/08/1452653.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值