js实现简洁的滑动门菜单(选项卡)效果代码


Posted in Javascript onSeptember 04, 2015

本文实例讲述了js实现简洁的滑动门菜单。分享给大家供大家参考。具体如下:

一个简洁实用的网页选项卡菜单,在同一个页面中实现两个选项卡,第一个是滑动门,从布局上来说基本是相似的,第二个是选项卡,这里主要使用了Js自定义函数:tabMenu,函数功能:实现tab菜单,参数说明:tabMenu(tabBox,navClass);

参数一:tabBox(tab容器id)
参数二:navClass(当前标签样式class)
备注:依赖指定html结构。

运行效果截图如下:

js实现简洁的滑动门菜单(选项卡)效果代码

在线演示地址如下:

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>简洁的选项卡菜单</title>
<meta http-equiv="content-type" content="text/html;charset=gb2312">
<style type="text/css">
ul,li{margin:0;padding:0;}
.tabBox{width:268px;margin:20px;}
ul.tabTag{height:28px;border-bottom:1px solid #000;list-style:none}
ul.tabTag li{float:left;line-height:27px;height:27px;padding:0 18px;color:#ccc;border:1px solid #ccc;border-bottom:none;margin-right:5px;background:#fff;cursor:pointer;}
ul.tabTag li.active{border-color:#000;background:#eee;color:red;position:relative;top:1px;}
.tabCon{border:1px solid #000;border-top:none;background:#fff;}
.tCon{display:none;background:#eee;padding:25px;}
</style>
<script type="text/javascript"> 
 function tabMenu(tabBox,navClass){
  var tabNavLi=document.getElementById(tabBox).getElementsByTagName("ul")[0].getElementsByTagName("li");
  var tabCon=document.getElementById(tabBox).getElementsByTagName("div")[0].getElementsByTagName("div");
  var tabLens=tabCon.length;
  for(var i=0;i<tabLens;i++){
  //应用js闭包传入参数i作为当前索引值赋值给m
   (function(m){
   tabNavLi[m].onmouseover = function(){
    for(var j=0; j<tabLens; j++){
     tabNavLi[j].className = (j==m)?navClass:"";
     tabCon[j].style.display = (j==m)?"block":"";
    }
   }
   })(i);
  }
 }
//函数调用
window.onload=function(){
 tabMenu("tabBox1","active");
 tabMenu("tabBox2","active");
}
</script>
</head>
<body>
<!--demo1-->
<div id="tabBox1" class="tabBox">
 <ul class="tabTag">
  <li class="active">新闻1</li>
  <li>体育1</li>
  <li>财经1</li>
 </ul>
 <div class="tabCon">
  <div class="tCon" style="display:block">新闻1内容</div>
  <div class="tCon">体育1内容</div>
  <div class="tCon">财经1内容</div>
 </div>
</div>
<!--demo2-->
<div id="tabBox2" class="tabBox">
 <ul class="tabTag">
  <li class="active">新闻2</li>
  <li>体育2</li>
  <li>财经2</li>
 </ul>
 <div class="tabCon">
  <div class="tCon" style="display:block">新闻2内容</div>
  <div class="tCon">体育2内容</div>
  <div class="tCon">财经2内容</div>
 </div>
</div>
</body>
</html>

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

Javascript 相关文章推荐
location对象的属性和方法应用(解析URL)
Apr 12 Javascript
js转化毫秒为时间格式代码
Apr 10 Javascript
在Mac OS下使用Node.js的简单教程
Jun 24 Javascript
详解Vue.use自定义自己的全局组件
Jun 14 Javascript
关于Vue.nextTick()的正确使用方法浅析
Aug 25 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
Oct 01 Javascript
axios发送post请求springMVC接收不到参数的解决方法
Mar 05 Javascript
vue中的router-view组件的使用教程
Oct 23 Javascript
JS实现li标签的删除
Apr 12 Javascript
vue+Element实现搜索关键字高亮功能
May 28 Javascript
vue通信方式EventBus的实现代码详解
Jun 10 Javascript
Vue使用vue-draggable 插件在不同列表之间拖拽功能
Mar 12 Javascript
js实现随屏幕滚动的带缓冲效果的右下角广告代码
Sep 04 #Javascript
jQuery实现带有上下控制按钮的简单多行滚屏效果代码
Sep 04 #Javascript
JS右下角广告窗口代码(可收缩、展开及关闭)
Sep 04 #Javascript
js实现网站最上边可关闭的浮动广告条代码
Sep 04 #Javascript
jquery实现浮动在网页右下角的彩票开奖公告窗口代码
Sep 04 #Javascript
jquery实现的Accordion折叠面板效果代码
Sep 02 #Javascript
jQuery实现带延迟效果的滑动菜单代码
Sep 02 #Javascript
You might like
PHP中在数据库中保存Checkbox数据(1)
2006/10/09 PHP
PHP PDOStatement:bindParam插入数据错误问题分析
2013/11/13 PHP
PHP中使用OpenSSL生成证书及加密解密
2017/02/05 PHP
Thinkphp5框架ajax接口实现方法分析
2019/08/28 PHP
尽可能写&quot;友好&quot;的&quot;Javascript&quot;代码
2007/01/09 Javascript
使用IE的地址栏来辅助调试Web页脚本
2007/03/08 Javascript
基于jquery的监控数据是否发生改变
2011/04/11 Javascript
jQuery实现带滚动线条导航效果的方法
2015/01/30 Javascript
TypeScript 中接口详解
2015/06/19 Javascript
Nodejs的express使用教程
2015/11/23 NodeJs
AngularJS基础 ng-class-odd 指令示例
2016/08/01 Javascript
Bootstrap modal使用及点击外部不消失的解决方法
2016/12/13 Javascript
微信小程序实现动态设置页面标题的方法【附源码下载】
2017/11/29 Javascript
vue同步父子组件和异步父子组件的生命周期顺序问题
2018/10/07 Javascript
js字符串倒序的实例代码
2018/11/30 Javascript
如何自动化部署项目?折腾服务器之旅~
2019/04/16 Javascript
[53:52]EG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[06:48]DOTA2-DPC中国联赛2月26日Recap集锦
2021/03/11 DOTA
python获取文件扩展名的方法
2015/07/06 Python
Python爬虫模拟登录带验证码网站
2016/01/22 Python
Python时间序列处理之ARIMA模型的使用讲解
2019/04/02 Python
解决pyqt5中QToolButton无法使用的问题
2019/06/21 Python
树莓派采用socket方式文件传输(python)
2019/06/22 Python
python画图--输出指定像素点的颜色值方法
2019/07/03 Python
python如何读取bin文件并下发串口
2019/07/05 Python
Python搭建Spark分布式集群环境
2019/07/05 Python
使用django和vue进行数据交互的方法步骤
2019/11/11 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
2019/12/20 Python
Pyinstaller打包Scrapy项目的实现步骤
2020/09/22 Python
房地产端午节活动方案
2014/08/24 职场文书
本科毕业论文指导教师评语
2014/12/30 职场文书
内乡县衙导游词
2015/02/05 职场文书
个人年终总结开头
2015/03/06 职场文书
公司联欢会主持词
2015/07/04 职场文书
2016大学生毕业实习心得体会
2016/01/23 职场文书
一定要知道的 25 个 Vue 技巧
2021/11/02 Vue.js