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 元素相对定位代码
Oct 15 Javascript
一个基于jquery的文本框记数器
Sep 19 Javascript
js正则表达式的使用详解
Jul 09 Javascript
JS比较2个日期间隔的示例代码
Apr 15 Javascript
JS实现的仿东京商城菜单、仿Win右键菜单及仿淘宝TAB特效合集
Sep 28 Javascript
javascript之IE版本检测超简单方法
Aug 20 Javascript
Javascript 引擎工作机制详解
Nov 30 Javascript
javascript浏览器用户代理检测脚本实现方法
Oct 27 Javascript
node前端模板引擎Jade之标签的基本写法
May 11 Javascript
Angular 2使用路由自定义弹出组件toast操作示例
May 10 Javascript
ES10的13个新特性示例(小结)
Sep 23 Javascript
vue+elementUI动态生成面包屑导航教程
Nov 04 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获取中英混合字符串长度的方法
2014/06/07 PHP
thinkPHP框架乐观锁和悲观锁实例分析
2019/10/30 PHP
Javascript 设计模式(二) 闭包
2010/05/26 Javascript
firefox下jQuery UI Autocomplete 1.8.*中文输入修正方法
2012/09/19 Javascript
JS验证身份证有效性示例
2013/10/11 Javascript
jquery隐藏标签和显示标签的实例
2013/11/11 Javascript
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
jquery搜索框效果实现方法
2015/01/16 Javascript
深入理解JavaScript系列(31):设计模式之代理模式详解
2015/03/03 Javascript
详解JavaScript中数组的相关知识
2015/07/29 Javascript
js和C# 时间日期格式转换的简单实例
2016/05/28 Javascript
JS实现点击网页判断是否安装app并打开否则跳转app store
2016/11/18 Javascript
Angular2学习笔记——详解NgModule模块
2016/12/02 Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
2017/01/06 Javascript
Angular.js自定义指令学习笔记实例
2017/02/24 Javascript
100行代码理解和分析vue2.0响应式架构
2017/03/09 Javascript
JS 组件系列之BootstrapTable的treegrid功能
2017/06/16 Javascript
Vue使用Clipboard.JS在h5页面中复制内容实例详解
2019/09/03 Javascript
node.js中 mysql 增删改查操作及async,await处理实例分析
2020/02/11 Javascript
vue实现一个矩形标记区域(rectangle marker)的方法
2020/10/28 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
python正则表达式之作业计算器
2016/03/18 Python
Python实现的NN神经网络算法完整示例
2018/06/19 Python
对python多线程中Lock()与RLock()锁详解
2019/01/11 Python
pygame实现成语填空游戏
2019/10/29 Python
Python 寻找局部最高点的实现
2019/12/05 Python
python中pathlib模块的基本用法与总结
2020/08/17 Python
浅谈HTML5中dialog元素尝鲜
2018/10/15 HTML / CSS
AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代码
2020/08/19 HTML / CSS
热门专业求职信
2014/05/24 职场文书
解除同居协议书
2015/01/29 职场文书
政协委员个人总结
2015/03/03 职场文书
毕业生政审意见范文
2015/06/04 职场文书
歌舞青春观后感
2015/06/10 职场文书
教师节祝酒词
2015/08/11 职场文书
大学生创业,为什么都会选择快餐饮?
2019/08/08 职场文书