Javascript结合css实现网页换肤功能


Posted in Javascript onNovember 02, 2009

Html代码部分:
1.要有一个带id的样式表链接,我们要通过操作这个链接来调用不同的href.
<link href="css/main0.css" rel="stylesheet" type="text/css" id="cssfile" />
2.皮肤选择按钮(后台为每个li添加onclick事件,触发换肤功能)
<ul id="skin">
<li id="skin_0" title="灰色">灰色</li>
<li id="skin_1" title="绿色">绿色</li>
<li id="skin_2" title="黄色">黄色</li>
<li id="skin_3" title="蓝色">蓝色</li>
<li id="skin_4" title="粉色">粉色</li>
<li id="skin_5" title="紫色">紫色</li>
</ul>
Js部分:
1.换肤方法
//设置cookie,按钮选中状态,页面皮肤
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";//设置页面样式
}
2.存取cookie
//将当前皮肤n存到cookie
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;
}
3.绑定换肤按钮事件
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))};
}
}
4.页面加载完成后设置皮肤样式
window.onload=function(){
skin.setSkin(skin.readCookie());//根据读取cookie返回值设置皮肤样式
skin.addEvent();//绑定按钮事件

Javascript 相关文章推荐
滚动条变色 隐藏滚动条与双击网页自动滚屏显示代码
Dec 28 Javascript
基于jquery的图片轮播 tab切换组件
Jul 19 Javascript
javascript时间函数基础介绍
Mar 28 Javascript
JavaScript两种跨域技术全面介绍
Apr 16 Javascript
angularJS利用ng-repeat遍历二维数组的实例代码
Jun 03 Javascript
JavaScript解决浮点数计算不准确问题的方法分析
Jul 09 Javascript
详解VS Code使用之Vue工程配置format代码格式化
Mar 20 Javascript
使用异步controller与jQuery实现卷帘式分页
Jun 18 jQuery
layui type2 通过url给iframe子页面传值的例子
Sep 06 Javascript
js实现简单页面全屏
Sep 17 Javascript
使用layui的layer组件做弹出层的例子
Sep 27 Javascript
详解Vue数据驱动原理
Nov 17 Javascript
cnblogs csdn 代码运行框实现代码
Nov 02 #Javascript
键盘 keycode的值 javascript时触发事件时很有用的要素
Nov 02 #Javascript
js 函数的执行环境和作用域链的深入解析
Nov 01 #Javascript
提高网站性能之 如何对待JavaScript
Oct 31 #Javascript
JavaScript Sort 表格排序
Oct 31 #Javascript
DOM 脚本编程中的兄弟节点
Oct 31 #Javascript
javascript GUID生成器实现代码
Oct 31 #Javascript
You might like
令PHP初学者头疼十四条问题大总结
2008/11/12 PHP
PHP无限分类代码,支持数组格式化、直接输出菜单两种方式
2011/05/18 PHP
新手学习PHP的一些基础知识分享
2011/07/27 PHP
php + WebUploader实现图片批量上传功能
2019/05/06 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
JavaScript 事件冒泡简介及应用
2010/01/11 Javascript
Web开发之JavaScript
2012/03/29 Javascript
js 控制下拉菜单刷新的方法
2013/03/03 Javascript
Javascript的&amp;&amp;和||的另类用法
2014/07/23 Javascript
Node.js中使用mongoskin操作mongoDB实例
2014/09/28 Javascript
JavaScript比较两个对象是否相等的方法
2015/02/06 Javascript
使用jQuery获得内容以及内容的属性
2015/02/26 Javascript
第二篇Bootstrap起步
2016/06/21 Javascript
javascript中的后退和刷新实现方法
2016/11/10 Javascript
AngularJS实现ajax请求的方法
2016/11/22 Javascript
javascript中递归的两种写法
2017/01/17 Javascript
JavaScript函数IIFE使用详解
2019/10/21 Javascript
Python使用CMD模块更优雅的运行脚本
2015/05/11 Python
Python实现选择排序
2017/06/04 Python
python处理csv数据动态显示曲线实例代码
2018/01/23 Python
Python中pandas模块DataFrame创建方法示例
2018/06/20 Python
Python numpy中矩阵的基本用法汇总
2019/02/12 Python
Pycharm如何打断点的方法步骤
2019/06/13 Python
在Django中实现添加user到group并查看
2019/11/18 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
2020/03/19 Python
python 实现关联规则算法Apriori的示例
2020/09/30 Python
Python Pygame实现俄罗斯方块
2021/02/19 Python
css3 clip实现圆环进度条的示例代码
2018/02/07 HTML / CSS
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
护士自我鉴定怎么写
2014/02/07 职场文书
群众路线党课主持词
2014/04/01 职场文书
颂军魂爱军营演讲稿
2014/09/13 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
公安个人四风问题对照检查及整改措施
2014/10/28 职场文书
MySql存储过程之逻辑判断和条件控制
2021/05/26 MySQL
Java面试题冲刺第十八天--Spring框架3
2021/08/07 面试题