JS+CSS实现滑动切换tab菜单效果


Posted in Javascript onAugust 25, 2015

本文实例讲述了JS+CSS实现滑动切换tab菜单效果。分享给大家供大家参考。具体如下:

这是风格简单的一款JS+CSS滑动门特效代码,当鼠标滑过菜单的时候,二级菜单自动切换,鼠标不需要点击,滑动门效果是个比较流行的网页菜单效果,在网上经常可看到这种菜单的身影。本菜单在火狐、IE8、Chrome下测试通过,代码兼容性还可以,自己用的化再美化一下风格。

运行效果截图如下:

JS+CSS实现滑动切换tab菜单效果

在线演示地址如下:

具体代码如下:

<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xlink="http://www.w3.org/1999/xlink" lang="zh_CN" xml:lang="zh_CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
var $=function(a,b){
 var ID = document.getElementById(a);
 var OBJ= (b)?ID.getElementsByTagName(b):ID;
 return OBJ
}
var n=0;
var tab = function(MENU,BODY){
 var l = MENU.length;
 for(var i=0;i<l;i++){
  MENU[i].onmouseover=function(a){
   return function(){
    MENU[n].className="label"
    BODY[n].style.display = "none";
    MENU[a].className="label label-selected";
    BODY[a].style.display = "block";
    n=a;
   }
  }(i);
 }
}
</script>
<style>
body{font-family: "微软雅黑","SimSun","宋体","Arial Narrow";}
#header,#main,#footer{width: 1050px;background: #F1F9D9;margin: 5px auto;}
#header{height: 50px;}
#main{height: auto;}
#footer{height: 50px;}
#menu{height: 36px;padding: 2px 0 0 0;}
li{list-style: none;cursor: pointer;}
.category{margin: 0;height: 35px;border-bottom: 1px solid #b5e2f3;text-align: center;}
.label{border: 1px solid #b5e2f3;float: left;width: 100px;height: 25px;margin: 0 3px;background: #F1FEF3;padding: 9px 0 0 0;outline: 0;-moz-border-radius: 5px 5px 0 0;}
.label-selected{background: #FFF;border-bottom: 1px solid #FFF;}
#linksContent{margin-top: -1;height: 600px;padding: 10px;border: 1px solid #b5e2f3;border-top: 0;background: #FFF;}
.link{float: left;width: 180px;display: block;margin: 10px 0;}
</style>
<title>myLinks</title> 
</head>
<body>
 <div id="container">
 <div id="header"></div>
 <div id="main">
  <div id="menu">
   <ul class="category">
   <li class="label label-selected">在线学习</li>
   <li class="label">运动休闲</li>
   <li class="label">编程社区</li>
   <li class="label">文化娱乐</li>
   <li class="label">休息项目</li>
   <li class="label">人际往来</li>
  </ul>
  </div>
  <div id="linksContent">
   <div class="category-1" style="display:block;">
   <ul>
   <li class="link"><span>html学习</span></li>
   <li class="link"><span>编译原理</span></li>
   <li class="link"><span>人工智能</span></li>
   <li class="link"><span>算法设计</span></li>
   </ul>
  </div>
  <div class="category-2" style="display:none;">
   <ul>
   <li class="link"><span>开车</span></li>
   <li class="link"><span>郊游</span></li>
   <li class="link"><span>音乐</span></li>
   </ul>
  </div>
  <div class="category-2" style="display:none;">
   <ul>
   <li class="link"><span>MSDN</span></li>
   <li class="link"><span>编译原理</span></li>
   <li class="link"><span>科幻电影</span></li>
   <li class="link"><span>技术文档</span></li>
   </ul>
  </div>
  <div class="category-2" style="display:none;">
   <ul>
    <li class="link"><span>java学习</span></li>
   <li class="link"><span>html学习</span></li>
   <li class="link"><span>编译原理</span></li>
   <li class="link"><span>人工智能</span></li>
   <li class="link"><span>算法设计</span></li>
   </ul>
  </div>
  <div class="category-2" style="display:none;">
   <ul>
   <li class="link"><span>html学习</span></li>
   <li class="link"><span>编译原理</span></li>
   <li class="link"><span>人工智能</span></li>
   </ul>
  </div>
  <div class="category-2" style="display:none;">
   <ul>
    <li class="link"><span>java学习</span></li>
   <li class="link"><span>html学习</span></li>
   <li class="link"><span>算法设计</span></li>
   </ul>
  </div> 
  </div>
 </div>
 <div id="footer"></div>
 </div>
<script>
 tab($("menu","li"),$("linksContent","div"));
</script>
</body>
</html>

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

Javascript 相关文章推荐
jquery 获取json数据实现代码
Apr 27 Javascript
基于jQuery的试卷自动排版系统实现代码
Jan 06 Javascript
IE关闭时判断及AJAX注销案例学习
Feb 18 Javascript
js中cookie的添加、取值、删除示例代码
Oct 21 Javascript
Node.js与PHP、Python的字符处理性能对比
Jul 06 Javascript
BootStrap3学习笔记(一)之网格系统
May 20 Javascript
jQuery Ajax File Upload实例源码
Dec 12 Javascript
简单实现jQuery多选框功能
Jan 09 Javascript
JS排序之冒泡排序详解
Apr 08 Javascript
基于JavaScript实现的折半查找算法示例
Apr 14 Javascript
js实现轮播图特效
May 28 Javascript
vue 通过 Prop 向子组件传递数据的实现方法
Oct 30 Javascript
jquery图片滚动放大代码分享(1)
Aug 25 #Javascript
jquery实现在网页指定区域显示自定义右键菜单效果
Aug 25 #Javascript
jquery实现的3D旋转木马特效代码分享
Aug 25 #Javascript
jQuery+CSS实现的网页二级下滑菜单效果
Aug 25 #Javascript
jQuery实现点击小图显示大图代码分享
Aug 25 #Javascript
基于jquery实现select选择框内容左右移动添加删除代码分享
Aug 25 #Javascript
jquery实现鼠标经过显示下划线的渐变下拉菜单效果代码
Aug 24 #Javascript
You might like
使用PHP提取视频网站页面中的FLASH地址的代码
2010/04/17 PHP
基于PHP实现假装商品限时抢购繁忙的效果
2015/10/16 PHP
PHP常用的小程序代码段
2015/11/14 PHP
thinkPHP5框架中widget的功能与用法详解
2018/06/11 PHP
PHP实现随机发放扑克牌
2020/04/21 PHP
JScript的条件编译
2007/05/29 Javascript
基于Jquery的实现回车键Enter切换焦点
2010/09/14 Javascript
表头固定(利用jquery实现原理介绍)
2012/11/08 Javascript
浅析JS中document对象的一些重要属性
2014/03/06 Javascript
tuzhu_req.js 实现仿百度图片首页效果
2015/08/11 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
2015/12/08 Javascript
详解vue2.0 不同屏幕适配及px与rem转换问题
2018/02/23 Javascript
axios发送post请求springMVC接收不到参数的解决方法
2018/03/05 Javascript
jQuery实现百度图片移入移出内容提示框上下左右移动的效果
2018/06/05 jQuery
javascript使用substring实现的展开与收缩文字功能示例
2019/06/17 Javascript
layui: layer.open加载窗体时出现遮罩层的解决方法
2019/09/26 Javascript
原生JS实现无缝轮播图片
2020/06/24 Javascript
在vue中使用Echarts画曲线图的示例
2020/10/03 Javascript
解决vue项目本地启动时无法携带cookie的问题
2021/02/06 Vue.js
vue-router懒加载的3种方式汇总
2021/02/28 Vue.js
jQuery实现鼠标拖动图片功能
2021/03/04 jQuery
Python实现八大排序算法
2016/08/13 Python
python的dataframe转换为多维矩阵的方法
2018/04/11 Python
python3+PyQt5使用数据库表视图
2018/04/24 Python
python中scikit-learn机器代码实例
2018/08/05 Python
Python 离线工作环境搭建的方法步骤
2019/07/29 Python
Pytorch保存模型用于测试和用于继续训练的区别详解
2020/01/10 Python
Python函数基本使用原理详解
2020/03/19 Python
FitFlop美国官网:英国符合人体工学的鞋类品牌
2018/10/05 全球购物
荷兰领先的百货商店:De Bijenkorf
2018/10/17 全球购物
UNOde50美国官网:西班牙珠宝品牌
2020/08/15 全球购物
《学会合作》教学反思
2014/04/12 职场文书
新闻工作者先进事迹
2014/05/26 职场文书
环卫工人慰问信
2015/02/15 职场文书
Python读取和写入Excel数据
2022/04/20 Python
MySQL池化框架学习接池自定义
2022/07/23 MySQL