Javascript实现换肤功能

<script type="text/javascript">
//====================换肤效果===================== 
/*函数:change_css(css_id,css_document)
*功能:自定义版面色彩样式,并写入cookie,保存
*参数:
css_id:要被替换的css文件在页面中的id
css_document:要使用的css文件的路径
cookie_name:要设置的该样式的cookie名称
*返回值:

*--------------------------------*/ 
function change_css(css_id,css_document,cookie_name){ 
document.getElementById(css_id).setAttribute("href",css_document); 
set_cookie(cookie_name,css_document,365);//保存为1年,当然,你也可以把它分离出来,做为参数设置 

//====================cookie函数==================== 
/*--函数名:set_cookie
*--功能:设置cookie,只能自定义一个cookie的名和值,设置多个时需要多次调用
*--参数:
c_name:自定义cookie名
c_value:自定义cookie值
可选c_expires:设置该cookie的存活时间,单位:天
可选c_path:设置该cookie的路径
可选c_domain:设置该cookie的域
可选c_secure:设置是否安全cookie,1安全,0或不设置,不安全
*--返回值:

*--------------------------------*/ 
function set_cookie(c_name,c_value,c_expires,c_path,c_domain,c_secure){ 
var cookie_string=c_name + "=" + escape(c_value); 
if(c_expires){ 
var expires = new Date(); 
expires.setTime(expires.getTime() + c_expires * 24 * 60 * 60 * 1000); 
cookie_string+=";expires="+expires; 

if(c_path){ 
cookie_string+=";path="+c_path; 

if(c_domain){ 
cookie_string+=";domain="+c_domain; 

if(c_secure){ 
cookie_string+=";secure"; 

document.cookie=cookie_string; 

/*--函数名:get_cookie
*--功能:读取需要的cookie
*--参数:
c_name:要读取的cookie名
*--返回值:
value:要读取的cookie的值
*--------------------------------*/ 
function get_cookie(cookie_name){ 
var cookie_pos = document.cookie.indexOf(cookie_name); 
// 如果找到了索引,就代表cookie存在,反之,就说明不存在。 
if (cookie_pos != -1){ 
// 把cookie_pos放在值的开始,只要给值加1即可。 
cookie_pos += cookie_name.length + 1; 
var cookie_end = document.cookie.indexOf(";", cookie_pos); 
if (cookie_end == -1){ 
cookie_end = document.cookie.length; 

var value = unescape(document.cookie.substring(cookie_pos,cookie_end)); 

return value; 
}


//=======================================================================================================
function changCss1(){
        change_css('cssfile1','themes/default/css/global.css','style1');//修改样式,当然,你要填入你自己的参数 
        change_css('cssfile2','themes/default/css/layout.css','style2');
}

function changCss2(){
        change_css('cssfile1','themes/redeye/css/global.css','style1');//修改样式,当然,你要填入你自己的参数 
        change_css('cssfile2','themes/redeye/css/layout.css','style2');
}

function changCss3(){
        change_css('cssfile1','themes/memory/css/global.css','style1');//修改样式,当然,你要填入你自己的参数 
        change_css('cssfile2','themes/memory/css/layout.css','style2');
}

function changCss4(){
        change_css('cssfile1','themes/helloworld/css/global.css','style1');//修改样式,当然,你要填入你自己的参数 
        change_css('cssfile2','themes/helloworld/css/layout.css','style2');
}
function changCss5(){
        change_css('cssfile1','themes/greenphotos/css/global.css','style1');//修改样式,当然,你要填入你自己的参数 
        change_css('cssfile2','themes/greenphotos/css/layout.css','style2');
}
function changCss6(){
        change_css('cssfile1','themes/wrkcolor/css/global.css','style1');//修改样式,当然,你要填入你自己的参数 
        change_css('cssfile2','themes/wrkcolor/css/layout.css','style2');
}

window.onload = function() {
       
        var d_css_document1="themes/default/css/global.css";//默认的css文件,比如css/green.css 
        var d_css_document2="themes/default/css/layout.css";
        var cookie1 = get_cookie("style1");//读取cookie 
        var cookie2 = get_cookie("style2");//读取cookie
        var css_document1=cookie1?cookie1:d_css_document1;//cookie是否存在
        var css_document2=cookie2?cookie2:d_css_document2;//cookie是否存 
        change_css('cssfile1',css_document1,'style1');//修改样式,当然,你要填入你自己的参数 
        change_css('cssfile2',css_document2,'style2');
}
//========================================================================================================
/*这里是对首页下拉列表进行控制
--------------------------------*/ 
function changecss(obj){
        var selectvalue = obj.options[obj.selectedIndex].value;
        switch(selectvalue){
                case "1":
                        changCss1();
                        break;
                case "2":
                        changCss2();
                        break;
                case "3":
                        changCss3();
                        break;       
                case "4":
                        changCss4();
                        break;       
                case "5":
                        changCss5();
                        break;       
                case "6":
                        changCss6();
                        break;
        }
        location.reload();
}
</script>

posted on 2008-07-29 10:48  asum  阅读(295)  评论(0编辑  收藏  举报

导航