js实现简单的网页换肤效果


Posted in Javascript onJanuary 18, 2017

js实现简单的网页换肤效果

中心思想:网页换肤的原理就是通过调用不同的样式表文件来实现不同的皮肤切换,并且需要将换好的皮肤计入Cookie中,这样用户已下次访问时,就可以显示用户自定义皮肤了

步骤:

1.在设计HTML代码时,用了一些小技巧,就是将皮肤选择按钮<li>元素的id与网页皮肤的样式文件名称设置的相同。这样就可以使完成换肤操作简化很多。

2.HTML结构要有一个带id的样式表链接,通过操作该链接的herf属性的值,从而实现换肤

<link rel="stylesheet" href="css/skin_0.css" id="cssfile"/>

3. 根据当前的li的id,通过attr()方法为<link>元素的href属性设置不同的值代码如下:

var $li = $("#skin li");
   $li.click(function () {
    $("#"+this.id).addClass("selected")
     .siblings().removeClass("selected");
    $("#cssfile").attr("href","css/"+this.id+".css");
   });

4. 当单机皮肤选择按键时候就可以切开皮肤了。但是当用户刷新网页或者关闭浏览起后,皮肤会被初始化,因此需要将当前选择的皮肤进行保存(jQuery中有一款Cookie插件),它简化了Cookie的操作。

//将皮肤保存进cookie
 $.cookie("myCssSkin",this.id,{path:'/',expires:10});

 保存后,就可以通过Cookie来获取当前的皮肤了,如果Cookie确实存在,则将当前设置为Cookie记录的值:

//获取Cookie中的皮肤
   var cookie_skin = $.cookie("myCssSkin");
   //判断皮肤存不存在
   if (cookie_skin){
    switchSkin(cookie_skin);
   }
   //设置cookid中的皮肤
   function switchSkin(skinName) {
    $("#"+skinName).addClass("selected")
     .siblings().removeClass("selected");
    $("#cssfile").attr("href","css/"+skinName+".css");
    $.cookie("myCssSkin",skinName,{path:'/',expires:10});
   }

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
jquery创建并行对象或者合并对象的实现代码
Oct 10 Javascript
javaScript面向对象继承方法经典实现
Aug 20 Javascript
使用Js让Html中特殊字符不被转义
Nov 05 Javascript
当鼠标滑过文本框自动选中输入框内容的JS代码分享
Nov 26 Javascript
js判断上传文件后缀名是否合法
Jan 28 Javascript
使用javascript插入样式
Mar 14 Javascript
node.js 中国天气预报 简单实现
Jun 06 Javascript
点击按钮出现60秒倒计时的简单js代码(推荐)
Jun 07 Javascript
angular2路由切换改变页面title的示例代码
Aug 23 Javascript
详解mpvue中小程序自定义导航组件开发指南
Feb 11 Javascript
vue实现图片懒加载的方法分析
Feb 05 Javascript
Vue点击切换Class变化,实现Active当前样式操作
Jul 17 Javascript
EasyUI修改DateBox和DateTimeBox的默认日期格式示例
Jan 18 #Javascript
AngularJs 利用百度地图API 定位当前位置 获取地址信息
Jan 18 #Javascript
jQuery Masonry瀑布流插件使用方法详解
Jan 18 #Javascript
js实现消息滚动效果
Jan 18 #Javascript
利用Vue.js实现checkbox的全选反选效果
Jan 18 #Javascript
微信小程序的动画效果详解
Jan 18 #Javascript
详解微信小程序开发之——wx.showToast(OBJECT)的使用
Jan 18 #Javascript
You might like
PHP PDO函数库详解
2010/04/27 PHP
php eval函数用法总结
2012/10/31 PHP
php中adodbzip类实例
2014/12/08 PHP
一个对于js this关键字的问题
2007/01/09 Javascript
JQuery 简便实现页面元素数据验证功能
2007/03/24 Javascript
分析 JavaScript 中令人困惑的变量赋值
2007/08/13 Javascript
JQUERY 对象与DOM对象之两者相互间的转换
2009/04/27 Javascript
jquery CSS选择器笔记
2010/03/29 Javascript
zeroclipboard复制到剪切板的flash
2010/08/04 Javascript
jquery.tmpl JQuery模板插件
2011/10/10 Javascript
深入理解javascript动态插入技术
2013/11/12 Javascript
在HTML代码中使用JavaScript代码的例子
2014/10/16 Javascript
JavaScript计算某一天是星期几的方法
2015/08/05 Javascript
js只执行1次的函数示例
2016/07/20 Javascript
前端实现文件的断点续传(前端文件提交+后端PHP文件接收)
2016/11/04 Javascript
微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决
2016/12/14 Javascript
js仿京东轮播效果 选项卡套选项卡使用
2017/01/12 Javascript
JS实现图片手风琴效果
2020/04/17 Javascript
vue 登录滑动验证实现代码
2018/08/24 Javascript
[15:57]教你分分钟做大人:斧王
2014/10/30 DOTA
[33:17]OG vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python基础教程之循环介绍
2014/08/29 Python
简单学习Python time模块
2016/04/29 Python
python数据结构链表之单向链表(实例讲解)
2017/07/25 Python
python基础之包的导入和__init__.py的介绍
2018/01/08 Python
Pandas 对Dataframe结构排序的实现方法
2018/04/10 Python
Python设计模式之外观模式实例详解
2019/01/17 Python
Python3网络爬虫中的requests高级用法详解
2019/06/18 Python
vue.js刷新当前页面的实例讲解
2020/12/29 Python
使用CSS3的box-sizing属性解决div宽高被内边距撑开的问题
2016/06/28 HTML / CSS
基于HTML5超酷摄像头(HTML5 webcam)拍照功能实现代码
2012/12/13 HTML / CSS
论文指导教师评语
2014/04/28 职场文书
2014大学生学生会工作总结
2014/12/19 职场文书
2015年学校综合治理工作总结
2015/07/20 职场文书
springboot+VUE实现登录注册
2021/05/27 Vue.js
Java获取字符串编码格式实现思路
2022/09/23 Java/Android