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 相关文章推荐
window.open的功能全解析
Oct 10 Javascript
体验js中splice()的强大(插入、删除或替换数组的元素)
Jan 16 Javascript
jquery选择符快速提取web表单数据示例
Mar 27 Javascript
jQuery中:text选择器用法实例
Jan 03 Javascript
jQuery实现防止提交按钮被双击的方法
Mar 24 Javascript
jQuery中 prop() attr()使用详解
May 19 Javascript
js正则表达式replace替换变量方法
May 21 Javascript
详解JavaScript时间处理之几个月前或几个月后的指定日期
Dec 21 Javascript
JavaScript继承的特性与实践应用深入详解
Dec 30 Javascript
在微信小程序中保存网络图片
Feb 12 Javascript
使用VUE实现在table中文字信息超过5个隐藏鼠标移到时弹窗显示全部
Sep 16 Javascript
JS中==、===你分清楚了吗
Mar 04 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
追忆往昔!浅谈收音机的百年发展历史
2021/03/01 无线电
PHP上传图片类显示缩略图功能
2016/06/30 PHP
捕获关闭窗口的脚本
2009/01/10 Javascript
js对数字的格式化使用说明
2011/01/12 Javascript
js面向对象设计用{}好还是function(){}好(构造函数)
2011/10/23 Javascript
Jquery $.getJSON 在IE下的缓存问题解决方法
2014/10/10 Javascript
jQuery中Ajax的get、post等方法详解
2015/01/20 Javascript
JavaScript获取按钮所在form表单id的方法
2015/04/02 Javascript
js事件驱动机制 浏览器兼容处理方法
2016/07/23 Javascript
Bootstrap 3 进度条的实现
2017/02/22 Javascript
JS继承与闭包及JS实现继承的三种方式
2017/10/15 Javascript
解决VUE mounted 钩子函数执行时 img 未加载导致页面布局的问题
2020/07/27 Javascript
[01:32]dota2拉比克至宝(222)
2018/12/20 DOTA
[36:33]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.29
2020/12/02 DOTA
Python解析nginx日志文件
2015/05/11 Python
Python打包可执行文件的方法详解
2016/09/19 Python
Django forms组件的使用教程
2018/10/08 Python
python实现键盘输入的实操方法
2019/07/16 Python
python实现图片二值化及灰度处理方式
2019/12/07 Python
python重要函数eval多种用法解析
2020/01/14 Python
Django设置Postgresql的操作
2020/05/14 Python
python 制作python包,封装成可用模块教程
2020/07/13 Python
python tkinter实现连连看游戏
2020/11/16 Python
python 爬虫之selenium可视化爬虫的实现
2020/12/04 Python
Gap中国官网:美式休闲风服饰
2017/02/05 全球购物
巴西电子、家电、智能手机购物网站:Girafa
2019/06/04 全球购物
软件生产职位结构化面试主要考察要素及面试题库
2015/06/12 面试题
建筑施工员岗位职责
2013/11/26 职场文书
《云雀的心愿》教学反思
2014/02/25 职场文书
信息技术毕业生自荐信范文
2014/03/13 职场文书
学习礼仪心得体会
2014/09/01 职场文书
赤壁观后感(2)
2015/06/15 职场文书
2016年师德学习心得体会
2016/01/12 职场文书
你真的了解PHP中的引用符号(&)吗
2021/05/12 PHP
手把手带你彻底卸载MySQL数据库
2022/06/14 MySQL
spring 项目实现限流方法示例
2022/07/15 Java/Android