jQuery实现MSN中文网滑动Tab菜单效果代码


Posted in Javascript onSeptember 09, 2015

本文实例讲述了jQuery实现MSN中文网滑动Tab菜单效果代码。分享给大家供大家参考。具体如下:

这是一款jQuery实现Msn中文网的滑动滑动门代码,利用jQuery实现的效果,代码很巧妙,就是利用一个绝对定位的层来实现移动效果,但是体验度大幅提升了。

运行效果截图如下:

jQuery实现MSN中文网滑动Tab菜单效果代码

在线演示地址如下:

具体代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="gb2312" />
<meta http-equiv="Refresh" content="3600" />
<title>MSN中文网:时尚生活 白领门户</title>
<style>
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td{
 margin: 0;
 padding: 0;
}
ol,ul{
 list-style: none;
}
.clearfix:after{
 content: ".";
 display: block;
 height: 0;
 clear: both;
 visibility: hidden;
}
.clearfix{
 display: inline-block;
}
/* Hides from IE-mac \*/
* html .clearfix{
 height: 1%;
}
.clearfix{
 display: block;
}
/* End hide from IE-mac */
body{
 font-size: 12px;
 font-family: "Microsoft Yahei" ,Tahoma, "SimSun";
 color: #333;
 background: #fff;
 line-height: 1.5;
}
.main_l{
 width: 513px;
 position: relative;
 float: left;
}
.main_title{
 height: 28px;
 overflow: hidden;
 background: url(images/s3.png) 0 0 no-repeat;
 float: left;
}
.main_title ul{
 font-size: 14px;
}
.main_title ul li{
 height: 23px;
 line-height: 23px;
 padding-left: 16px;
 padding-right: 16px;
 padding-top: 1px;
 background: #f1f1f1;
 border-top: #fff 3px solid;
 border-left: #fff 1px solid;
 border-right: #fff 1px solid;
 float: left;
}
.main_title ul .on{
 height: 22px;
 line-height: 22px;
 padding-left: 16px;
 padding-right: 16px;
 background: #fff;
 border-top: #009ad9 4px solid;
 border-left: #009ad9 1px solid;
 border-right: #009ad9 1px solid;
 border-bottom: #fff 1px solid;
}
.main_title ul .on a{
 font-weight: 700;
}
.main_title span{
 line-height: 24px;
 padding-top: 4px;
 padding-right: 10px;
 float: right;
}
.main_l .main_title{
 width: 513px;
 overflow: hidden;
}
.main_l .main_content{
 width: 513px;
}
.main_l .main_content .main_box{
 width: 339px;
 overflow: hidden;
 float: left;
}
.main_l .main_content .main_box .list{
 font-size: 14px;
 line-height: 26px;
}
.main_l .main_content .main_box .list ul{
 padding: 8px 0;
 border-bottom: #e1e1e1 1px solid;
 width: 339px;
 overflow: hidden;
}
.main_l .main_content .main_box .list ul li{
 padding-left: 25px;
 background: url(images/s3.png) 3px -300px no-repeat;
 width: 600px;
}
.main_l .main_content .main_box .list ul .v{
 background: url(images/s3.png) 3px -330px no-repeat;
}
.main_l .main_content .main_box .list ul .top{
 background: none;
 padding-left: 0;
 text-align: center;
 font-size: 14px;
 font-weight: 700;
 width: 339px;
}
.tab div.t.none{
 display: none;
}
.tab .main_title ul.fx li{
 background-color: transparent;
}
.tab .main_title ul.fx li, .tab .main_title ul.fx li.on{
 border-top: 0;
 margin-top: 3px;
 padding-top: 0;
}
.tab .main_title ul.fx li.on{
 border-left-color: transparent;
 border-right-color: transparent;
 border-bottom-width: 0;
}
.tab .main_title ul.fx{
 z-index: 20;
 position: relative;
}
.tab .main_title div.animate{
 height: 23px;
 position: absolute;
 top: 0;
 border-top: #009ad9 4px solid;
 border-left: #009ad9 1px solid;
 border-right: #009ad9 1px solid;
 border-bottom: #fff 1px solid;
 background-color: #fff;
}
</style>
<script src="jquery-1.6.2.min.js"></script>
<script>
var msn = msn || {};
msn.hp = msn.hp || {};
msn.hp.tab = {
 t: null,
 delayTime: 150,
 fx: true,
 tab: function(b) {
 $(b).siblings().removeClass("on");
 $(b).addClass("on");
 var c = $(b).parents(".tab").find("div.t");
 var a = c.eq($(b).index());
 c.addClass("none");
 a.removeClass("none");
 if (this.fx) {
  if ($(b).parent().hasClass("nofx")) {
  return
  }
  $(b).parent().siblings(".animate").width($(b).outerWidth() - 2).animate({
  left: $(b).position().left
  },
  "slow")
 }
 },
 delayTab: function(b, a) {
 clearTimeout(b.t);
 this.t = setTimeout(function() {
  b.tab(a)
 },
 this.delayTime)
 },
 init: function() {
 var a = this;
 a.animate();
 if (window.Touch) {
  $(".tab .main_title>ul>li[class!='on']>a").click(function() {
  return false
  })
 }
 $(".tab .main_title>ul>li,.tab>ul.hotread_menu>li").hover(function() {
  a.delayTab(a, this)
 },
 function() {
  clearTimeout(a.t)
 })
 },
 animate: function() {
 if (!this.fx) {
  return
 }
 $(".tab .main_title>ul").each(function() {
  if (!$(this).hasClass("nofx")) {
  $(this).addClass("fx")
  }
 });
 $(".tab .main_title").each(function(a, b) {
  if ($(this).find("ul").hasClass("nofx")) {
  return
  }
  $(b).append("<div class='animate' ></div>");
  $(b).find(".animate").width($(b).find("ul>li.on").outerWidth() - 2).css("left", $(b).find("ul>li.on").position().left)
 })
 }
};
$(document).ready(function() {
 var a = msn.hp;
 a.tab.init();
});
</script>
</style>
</head>
<body>
<div class="clearfix">
 <div class="main_l tab">
  <div class="main_title">
   <ul class="fx">
    <li class="">Tab1</li>
    <li><a href="#">Tab2</a></li>
    <li><a href="#">Tab3</a></li>
    <li class="on"><a href="#">Tab4</a></li>
   </ul>
   <span><a href="#"></a>更多>> </span>
   <div class="animate" style="width: 60px; left: 186px;"></div><!--这是移动的关键-->
  </div>
  <div class="main_content clearfix">
   <div class="main_box t none">
    <div class="list">
     <ul>
      <li class="top"><a href="#">双色球井喷36注498万</a> </li>
      <li><a href="#">停电促彩民中500万</a> </li>
      <li><a href="#">白领讲述坑爹的理赔经历</a> </li>
      <li><a href="#">年入13万怎规划</a> </li>
      <li><a href="#">铂金遇冷升值潜力超黄金</a> </li>
      <li><a href="#">投资铂金正当时</a> </li>
      <li><a href="#">打败巴菲特10方法:先还清你信用卡欠款</a> </li>
      <li><a href="#">中国股市越生越穷越穷越生</a> </li>
      <li><a href="#">熊猫币更来菜</a> </li>
     </ul>
    </div>
   </div>
   <div class="main_box t none">
    <div class="list">
     <ul>
      <li class="top"><a href="#">外媒称奢侈品炫富割裂中国社会收入现鸿沟</a> </li>
      <li><a href="#">京新盘价下调有限</a> </li>
      <li><a href="#">住宅周签约同比降七成</a> </li>
      <li><a href="#">基金抱团表现低迷</a> </li>
      <li><a href="#">重仓股你加我减起内讧</a> </li>
      <li><a href="#">李旭利老鼠仓资金过亿</a> </li>
      <li><a href="#">昔日私募巨星被拘</a> </li>
      <li><a href="#">传统封基全线下挫</a> </li>
      <li><a href="#">基金经理热望11月曙光</a> </li>
      <li><a href="#">福布斯统计:中国四百名富豪身家近三万亿</a> </li>
      <li><a href="#">电销保险骚扰再现新变种</a> </li>
      <li><a href="#">车贷成鸡肋喊停</a> </li>
      <li><a href="#">部分银行违规营销信用卡</a> <a href="#">银行千亿投理财</a> </li>
      <li><a href="#">债市长期投资机会来临</a> <a href="#">或将率先迎来转机</a> </li>
      <li><a href="#">短期流动性仍偏紧</a> <a href="#">密切关注投资通胀数据</a> </li>
     </ul>
    </div>
   </div>
   <div class="main_box t none">
    <div class="list">
     <ul>
      <li class="top"><a href="#">住房公积金面临尴尬:买房远不够治病又违规</a> </li>
      <li><a href="#">房租比房价更伤人房租暴涨的十大后果</a> </li>
      <li><a href="#">郎咸平发危言楼市进入高风险低收入时代</a> </li>
      <li><a href="#">四环外低价房33万</a> <a href="#">2.1万住西四环五棵松</a> </li>
      <li><a href="#">金九银十惨淡开局降51万特价房杀出重围</a> </li>
      <li><a href="#">迪拜塔里的奢侈酒店全球最奢侈酒店大PK</a> </li>
      <li><a href="#">全球生活成本最低十城市中国无城市上榜</a> </li>
      <li><a href="#">与亲密爱人沐浴看让男女疯狂的情趣浴室</a> </li>
      <li><a href="#">高端住宅成“宠儿”终极置业大推荐</a> </li>
      <li><a href="#">上师大“双优”房两居整租限量放送</a> </li>
     </ul>
    </div>
   </div>
   <div class="main_box t">
    <div class="list">
     <ul>
      <li class="top"><a href="#">最适合80后的三套婚房案例简约温馨装修</a> </li>
      <li><a href="#">小女人装136平4室2厅2卫绝美气质家</a> </li>
      <li><a href="#">10万网友推崇的60套迷人简约样板间</a> </li>
      <li><a href="#">42图记录三层复式美宅装修历程(组图)</a> </li>
      <li><a href="#">剩女自装90平混搭风格三居室(组图)</a> </li>
      <li><a href="#">六万将60平旧房改成2室2厅豪华公寓</a> </li>
      <li><a href="#">96平二手房变简约北欧风情三口之家</a> </li>
      <li><a href="#">网友晒89平米二室二厅浪漫惬意婚房</a> </li>
      <li><a href="#">一室二厅的温馨二人世界很红火(图)</a> </li>
      <li><a href="#">85后小媳妇装92平米简约奢华三居</a> </li>
     </ul>
    </div>
   </div>
  </div>
 </div>
</div>
</body>
</html>

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
使用jquery解析XML的方法
Sep 05 Javascript
BootStrap智能表单实战系列(三)分块表单配置详解
Jun 13 Javascript
JS简单生成随机数(随机密码)的方法
May 11 Javascript
Node.js实现文件上传的示例
Jun 28 Javascript
使用node.js对音视频文件加密的实例代码
Aug 30 Javascript
Vuex提升学习篇
Jan 11 Javascript
浅谈Vue响应式(数组变异方法)
May 07 Javascript
基于node搭建服务器,写接口,调接口,跨域的实例
May 13 Javascript
jQuery实现为table表格动态添加或删除tr功能示例
Feb 19 jQuery
微信小程序手动添加收货地址省市区联动
May 18 Javascript
微信小程序基于高德地图API实现天气组件(动态效果)
Oct 22 Javascript
关于angular 8.1使用过程中的一些记录
Nov 25 Javascript
js基于面向对象实现网页TAB选项卡菜单效果代码
Sep 09 #Javascript
JS实现自动变换的菜单效果代码
Sep 09 #Javascript
jQuery实现点击小图片淡入淡出显示大图片特效
Sep 09 #Javascript
JS实现自动变化的导航菜单效果代码
Sep 09 #Javascript
使用impress.js制作幻灯片
Sep 09 #Javascript
谈谈impress.js初步理解
Sep 09 #Javascript
javascript实现base64 md5 sha1 密码加密
Sep 09 #Javascript
You might like
PHP is_subclass_of函数的一个BUG和解决方法
2014/06/01 PHP
PHP导出带样式的Excel示例代码
2016/08/28 PHP
PHP弱类型语言中类型判断操作实例详解
2017/08/10 PHP
Laravel中GraphQL接口请求频率实战记录
2020/09/01 PHP
js获取判断上传文件后缀名的示例代码
2014/02/19 Javascript
jquery组件使用中遇到的问题整理及解决
2014/02/21 Javascript
PHP和NodeJs开发的应用如何共用Session
2015/04/16 NodeJs
JavaScript对HTML DOM使用EventListener进行操作
2015/10/21 Javascript
js数组如何添加json数据及js数组与json的区别
2015/10/27 Javascript
学习javascript面向对象 理解javascript对象
2016/01/04 Javascript
JavaScript类型系统之Object详解
2016/01/07 Javascript
KnockoutJs快速入门教程
2016/05/16 Javascript
js图片切换具体实现代码
2016/10/13 Javascript
Bootstrap的class样式小结
2016/12/01 Javascript
JavaScript登录记住密码操作(超简单代码)
2017/03/22 Javascript
JavaScript学习笔记之DOM基础操作实例小结
2019/01/09 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
2019/04/01 Javascript
详解微信小程序回到顶部的两种方式
2019/05/09 Javascript
Python 在字符串中加入变量的实例讲解
2018/05/02 Python
python实现事件驱动
2018/11/21 Python
Python3 max()函数基础用法
2019/02/19 Python
Django通过dwebsocket实现websocket的例子
2019/11/15 Python
python enumerate内置函数用法总结
2020/01/07 Python
python实现图像拼接功能
2020/03/23 Python
美国在线面料商店:Online Fabric Store
2018/07/26 全球购物
采用冷却技术的超自然舒适度:GhostBed床垫
2018/09/18 全球购物
什么是设计模式
2012/06/17 面试题
拖鞋店创业计划书
2014/01/15 职场文书
我们的节日清明节活动方案
2014/03/05 职场文书
党员一句话承诺大全
2014/03/28 职场文书
2014幼儿园班主任工作总结
2014/12/04 职场文书
教师工作态度自我评价
2015/03/05 职场文书
调任通知
2015/04/21 职场文书
2015年售票员工作总结
2015/04/29 职场文书
家庭贫困证明
2015/06/16 职场文书
linux目录管理方法介绍
2022/06/01 Servers