用Jquery轻松实现网页换肤

news/2024/7/11 1:43:41 标签: jQuery

现在介绍网页换肤的例子已经数不胜数,自己也没有仔细研究过,刚搞遇到类似这个问题,网上查了资料解决了问题,感觉很有用,就记录了下来和大家分享一下。效果很简单,我就直接讲怎么使用的。

其中用到了jquery.cookie.js

首先是html代码:

XML/HTML代码
  1. <div id="header_demo">  
  2.     <a id="logo" href="#">Rainweb</a>  
  3.         <ul id="skin">  
  4.             <li id="skin_0" title="蓝色" class="selected">蓝色</li>  
  5.             <li id="skin_1" title="紫色">紫色</li>  
  6.             <li id="skin_2" title="红色">红色</li>  
  7.             <li id="skin_3" title="天蓝色">天蓝色</li>  
  8.             <li id="skin_4" title="橙色">橙色</li>  
  9.             <li id="skin_5" title="淡绿色">淡绿色</li>  
  10.         </ul>  
  11. </div> 

CSS代码:

CSS代码
  1. /*头部样式开始*/  
  2. #header_demo{  
  3.     width:700px;   
  4.     height:80px;   
  5.     border1px solid #AAAAAA;  
  6.     margin:10px auto;   
  7.     /** background:#3B5998; **/  
  8. }  
  9. /*logo样式开始*/  
  10. #logo {   
  11.     float:left;   
  12.     margin:0 0 0 10px;   
  13.     color:#FFF;   
  14.     font-size:3em;   
  15.     font-weight:700;  
  16.     line-height:80px;  
  17. }  
  18. /*切换皮肤样式*/  
  19. #skin {   
  20.     float:rightright;   
  21.     margin:10px;   
  22.     padding:4px;   
  23.     width:120px;   
  24.     list-style:none;   
  25.     border1px solid #CCCCCC;   
  26.     background:#FFF;  
  27. }  
  28. #skin li {   
  29.     float:left;   
  30.     margin-right:4px;   
  31.     width:15px;   
  32.     height:15px;   
  33.     text-indent:-9999px;   
  34.     overflow:hidden;   
  35.     display:block;   
  36.     cursor:pointer;   
  37.     background-image:url(images/theme.gif);   
  38. }  
  39. #skin_0 { background-position:0px 0px; }  
  40. #skin_1 { background-position:15px 0px; }  
  41. #skin_2 { background-position:35px 0px; }  
  42. #skin_3 { background-position:55px 0px; }  
  43. #skin_4 { background-position:75px 0px; }  
  44. #skin_5 { background-position:95px 0px; }  
  45. #skin_0.selected { background-position:0px 15px; }  
  46. #skin_1.selected { background-position:15px 15px; }  
  47. #skin_2.selected { background-position:35px 15px; }  
  48. #skin_3.selected { background-position:55px 15px; }  
  49. #skin_4.selected { background-position:75px 15px; }  
  50. #skin_5.selected { background-position:95px 15px; }  
JavaScript代码
  1. //网站换肤  
  2. $(function () {  
  3.     var $li = $("#skin li");  //查找到元素  
  4.     $li.click(function () {   //给元素添加事件  
  5.         switchSkin(this.id);//调用函数  
  6.     });  
  7.     //保存Cookie完毕以后就可以通过Cookie来获取当前的皮肤了  
  8.     var cookie_skin = $.cookie("MyCssSkin");     //获取Cookie的值  
  9.     if (cookie_skin) {                          //如果确实存在Cookie  
  10.         switchSkin(cookie_skin);     //执行  
  11.     }  
  12. });  
  13. function switchSkin(skinName) {     
  14.     $("#"   skinName).addClass("selected")                //当前<li>元素选中  
  15.                        .siblings().removeClass("selected");  //去掉其他同辈<li>元素的选中  
  16.     $("#cssfile").attr("href""css/skin/"   skinName   ".css"); //设置不同皮肤  
  17.     $.cookie("MyCssSkin", skinName, { path: ‘/’, expires: 10 });  //保存Cookie  
  18.     alert(skinName);  
  19. }  

最后就是一个link文件:

XML/HTML代码
  1. <link id="cssfile" type="text/css" href="css/skin/skin_5.css" rel="Stylesheet">  

http://www.niftyadmin.cn/n/1732332.html

相关文章

jQuery hover 与 mouseover 与mouseout 的区别

以前一直以为在jquery中其实mouseover和mouseout两个事件等于hover事件。两个没什么区别&#xff0c;应该是一样的。但昨天一个动画效果才让我见识了&#xff0c;这两个并不能等同。 <div class"wrapper"> <div class"img"></div> <d…

解决Jquery Ajax提交服务器端接收中文乱码问题

看到有朋友说到用post提交方式解决&#xff0c;我指定了methord"post",仍然解决不了&#xff0c;说一下解决办法&#xff0c;客户端进行编码&#xff0c;服务器端解码&#xff0c; 客户端&#xff1a;var where escape($(#where).val()); 服务器端&#xff1a; …

jquery中的hover方法教程—明河谈jquery

jQuery中的hover方法是个非常常用的方法&#xff0c;接受二个参数&#xff0c;第一个参数为鼠标移入对象时触发的事件&#xff0c;第二个参数为鼠标移出对象时触发的事件。 很多人误以为hover()是mouserover和mouseout的结合体&#xff0c;实际上不是。 hover mouseentermous…

Jquery中如何获取元素的文本,值,属性和内容

jQuery DOM 操作jQuery 中非常重要的部分&#xff0c;就是操作 DOM 的能力。jQuery 提供一系列与 DOM 相关的方法&#xff0c;这使访问和操作元素和属性变得很容易。提示&#xff1a;DOM Document Object Model&#xff08;文档对象模型&#xff09;DOM 定义访问 HTML 和 XML …

jQuery下获取浏览器、可视范围及其他的各种宽高

<script type"text/javascript"> $(document).ready(function() { alert($(window).height()); //浏览器时下窗口可视区域高度 alert($(document).height()); //浏览器时下窗口文档的高度 alert($(document.body).height());//浏览器时下窗口文档body的高…

Jquery中Show(),hide()方法的使用

jQuery hide() 和 show()通过 jQuery&#xff0c;您可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素&#xff1a; $("#hide").click(function(){ $("p").hide();}); $("#show").click(function(){ $("p").show();}); 语法&am…

css问题filter: alpha(opacity=100,finishopacity=0,style=2)

alpha是来设置透明度的,它的基本属性是filter&#xff1a;alpha&#xff08;opacity&#xff0c;finishopacity&#xff0c; style&#xff0c;startX&#xff0c;startY&#xff0c;finishX&#xff0c;finishY&#xff09;. opacity代表透明度数,选值0-100,0是完全透明,100是…

Chrome浏览器、火狐等浏览器上和IE类浏览器(360、qq等)有所不同,目前已发现的不同以及解决办法

1、Chrome浏览器、火狐等浏览器上和IE类浏览器&#xff08;360、qq等&#xff09;有所不同&#xff0c;目前已发现的不同以及解决办法&#xff1a; &#xff08;1&#xff09; IE是parent.document&#xff0c;Chrome是parent.contentDocument 解决办法&#xff08;通用型&a…