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 相关文章推荐
用js计算页面执行时间的函数
Dec 07 Javascript
javascript textarea光标定位方法(兼容IE和FF)
Mar 12 Javascript
jquery调用wcf并展示出数据的方法
Jul 07 Javascript
不要使用jQuery触发原生事件的方法
Mar 03 Javascript
JQuery EasyUI 数字格式化处理示例
May 05 Javascript
基于javascript如何传递特殊字符
Nov 30 Javascript
AngularJS的依赖注入实例分析(使用module和injector)
Jan 19 Javascript
BootStrapValidator初使用教程详解
Feb 10 Javascript
Vue.js 插件开发详解
Mar 29 Javascript
JS图片轮播与索引变色功能实例详解
Jul 06 Javascript
JS闭包的几种常见形式实例详解
Sep 16 Javascript
在vue中使用css modules替代scroped的方法
Mar 10 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
单位速度在实战中的运用
2020/03/04 星际争霸
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
2010/06/11 PHP
并发下常见的加锁及锁的PHP具体实现代码
2010/10/12 PHP
PHP安全防范技巧分享
2011/11/03 PHP
PHP中使用imagick生成PSD文件缩略图教程
2015/01/26 PHP
浅谈PHP中如何实现Hook机制
2017/11/14 PHP
关于Blog顶部的滚动导航条代码
2006/09/25 Javascript
javascript 事件绑定问题
2011/01/01 Javascript
jQuery之自动完成组件的深入解析
2013/06/19 Javascript
详解JavaScript函数绑定
2013/08/18 Javascript
node.js中的fs.chmodSync方法使用说明
2014/12/18 Javascript
JS清除选择内容的方法
2015/01/29 Javascript
javascript中cookie对象用法实例分析
2015/01/30 Javascript
JavaScript中setUTCMilliseconds()方法的使用详解
2015/06/12 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
2016/12/22 Javascript
jQuery简单实现向列表动态添加新元素的方法示例
2017/12/25 jQuery
JS实现的抛物线运动效果示例
2018/01/30 Javascript
详解JavaScript中精度失准问题及解决方法
2020/02/04 Javascript
element-ui中dialog弹窗关闭按钮失效的解决
2020/09/22 Javascript
[01:38]女王驾到——至宝魔廷新尊技能&特效展示
2020/06/16 DOTA
[01:11]steam端dota2实名认证操作流程视频
2021/03/11 DOTA
Python实现的爬虫功能代码
2017/06/24 Python
详细介绍pandas的DataFrame的append方法使用
2019/07/31 Python
手把手教你安装Windows版本的Tensorflow
2020/03/26 Python
在django中form的label和verbose name的区别说明
2020/05/20 Python
Python getattr()函数使用方法代码实例
2020/08/10 Python
python 浮点数四舍五入需要注意的地方
2020/08/18 Python
Omio美国:全欧洲低价大巴、火车和航班搜索和比价
2017/11/08 全球购物
大学生求职中的自我评价
2013/10/01 职场文书
标准化管理实施方案
2014/02/25 职场文书
利用Selenium添加cookie实现自动登录的示例代码(fofa)
2021/05/08 Python
pytorch 预训练模型读取修改相关参数的填坑问题
2021/06/05 Python
Python 中的Sympy详细使用
2021/08/07 Python
mysql数据插入覆盖和时间戳的问题及解决
2022/03/25 MySQL
Docker 镜像介绍以及commit相关操作
2022/04/13 Servers
JS setTimeout与setInterval的区别
2022/04/20 Javascript