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 相关文章推荐
百度 popup.js 完美修正版非常的不错 脚本之家推荐
Apr 17 Javascript
基于jQuery的消息提示插件 DivAlert之旅(二)
Apr 01 Javascript
使用jQuery实现的掷色子游戏动画效果
Mar 14 Javascript
jquery中animate的stop()方法作用实例分析
Jan 30 Javascript
JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
Dec 20 Javascript
解决微信浏览器Javascript无法使用window.location.reload()刷新页面
Jun 21 Javascript
vue2.0实现导航菜单切换效果
May 08 Javascript
老生常谈Bootstrap媒体对象
Jul 06 Javascript
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
Oct 13 jQuery
node.js基于express使用websocket的方法
Nov 09 Javascript
详解小程序退出页面时清除定时器
Apr 28 Javascript
记录一次开发微信网页分享的步骤
May 07 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 获取可变函数参数的函数
2009/08/26 PHP
ExtJS与PHP、MySQL实现存储的方法
2010/04/02 PHP
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
使用jquery读取html5 localstorage的值的方法
2013/01/04 Javascript
在JS中如何调用JSP中的变量
2014/01/22 Javascript
初识Javascript小结
2015/07/16 Javascript
JavaScript提高性能知识点汇总
2016/01/15 Javascript
JavaScript常用判断写法大全(推荐)
2016/05/30 Javascript
ES6新特性之解构、参数、模块和记号用法示例
2017/04/01 Javascript
nodejs基于WS模块实现WebSocket聊天功能的方法
2018/01/12 NodeJs
vue和webpack项目构建过程常用的npm命令详解
2018/06/15 Javascript
微信小程序实现授权登录
2019/05/15 Javascript
vue实现搜索过滤效果
2019/05/28 Javascript
纯JS开发baguetteBox.js响应式画廊插件
2020/06/28 Javascript
vue打包静态资源后显示空白及static文件路径报错的解决
2020/09/02 Javascript
python批量创建指定名称的文件夹
2019/03/21 Python
Python这样操作能存储100多万行的xlsx文件
2019/04/16 Python
Python中栈、队列与优先级队列的实现方法
2019/06/30 Python
关于jupyter打开之后不能直接跳转到浏览器的解决方式
2020/04/13 Python
通过python 执行 nohup 不生效的解决
2020/04/16 Python
python实现文法左递归的消除方法
2020/05/22 Python
使用tensorflow根据输入更改tensor shape
2020/06/23 Python
Django修改app名称和数据表迁移方案实现
2020/09/17 Python
Python+unittest+DDT实现数据驱动测试
2020/11/30 Python
绢花、人造花和人造花卉:BLOOM
2019/08/07 全球购物
xml有哪些解析技术?区别是什么
2016/04/26 面试题
商业活动邀请函
2014/02/04 职场文书
怎样写好创业计划书的内容
2014/02/06 职场文书
环卫工人节活动总结
2014/08/29 职场文书
公民授权委托书范本
2014/09/17 职场文书
质量保证书怎么写
2015/02/27 职场文书
保护环境建议书作文500字
2015/09/14 职场文书
2016年敬老月活动总结
2016/04/05 职场文书
Python音乐爬虫完美绕过反爬
2021/08/30 Python
多台电脑共享文件怎么设置?多台电脑共享文件操作教程
2022/04/08 数码科技
CSS 左边固定宽右边自适应的6种方法
2022/05/15 HTML / CSS