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 相关文章推荐
使用JavaScript 实现各种跨域的方法
May 08 Javascript
基于javascript 闭包基础分享
Jul 10 Javascript
分享一款基于jQuery的视频播放插件
Oct 09 Javascript
javascript运算符——位运算符全面介绍
Jul 14 Javascript
利用JS实现数字增长
Jul 28 Javascript
Vuejs 2.0 子组件访问/调用父组件的方法(示例代码)
Feb 08 Javascript
vue新vue-cli3环境配置和模拟json数据的实例
Sep 19 Javascript
使用jquery模拟a标签的click事件无法实现跳转的解决
Dec 04 jQuery
jQuery pager.js 插件动态分页功能实例分析
Aug 02 jQuery
详谈Object.defineProperty 及实现数据双向绑定
Jul 18 Javascript
vue+iview实现分页及查询功能
Nov 17 Vue.js
微信小程序实现首页弹出广告
Dec 03 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函数memory_get_usage获取PHP内存清耗量的方法
2011/12/06 PHP
让ThinkPHP支持大小写url地址访问的方法
2014/10/31 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
2019/12/20 PHP
几款极品的javascript压缩混淆工具
2007/05/16 Javascript
Javascript学习笔记1 数据类型
2010/01/11 Javascript
网页源代码保护(禁止右键、复制、另存为、查看源文件)
2012/05/23 Javascript
js通过元素class名字获取元素集合的具体实现
2014/01/06 Javascript
window.location.href的用法(动态输出跳转)
2014/08/09 Javascript
javascript中hasOwnProperty() 方法使用指南
2015/03/09 Javascript
vue.js+boostrap项目实践(案例详解)
2016/09/21 Javascript
jsonp跨域请求实现示例
2017/03/13 Javascript
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
JS实现的base64加密解密操作示例
2018/04/18 Javascript
jQuery实现的简单获取索引功能示例
2018/06/04 jQuery
jquery实现动态添加附件功能
2018/10/23 jQuery
利用Promise自定义一个GET请求的函数示例代码
2019/03/20 Javascript
vue+django实现一对一聊天功能的实例代码
2019/07/17 Javascript
python利用OpenCV2实现人脸检测
2020/04/16 Python
Python中的默认参数实例分析
2018/01/29 Python
pandas实现选取特定索引的行
2018/04/20 Python
python递归全排列实现方法
2018/08/18 Python
python查看模块安装位置的方法
2018/10/16 Python
nginx搭建基于python的web环境的实现步骤
2020/01/03 Python
Python装饰器的应用场景代码总结
2020/04/10 Python
当我正在为表建立索引的时候,SQL Server 会禁止对表的访问吗
2014/04/28 面试题
师范应届生语文教师求职信
2013/10/29 职场文书
周年庆典邀请函范文
2014/01/23 职场文书
岗位明星事迹材料
2014/05/18 职场文书
校园文明标语
2014/06/13 职场文书
法院干警四风问题自我剖析材料
2014/09/29 职场文书
2015年12.4全国法制宣传日活动总结
2015/03/24 职场文书
大学毕业典礼致辞
2015/07/29 职场文书
用人单位的规章制度,怎样制定才是有效的?
2019/07/09 职场文书
golang switch语句的灵活写法介绍
2021/05/06 Golang
Win11 Build 22000.829更新补丁KB5015882发布(附更新修复内容汇总)
2022/07/15 数码科技