js与jquery分别实现tab标签页功能的方法


Posted in Javascript onNovember 18, 2016

本文实例讲述了js与jquery分别实现tab标签页功能的方法。分享给大家供大家参考,具体如下:

首先列出样式和html标签

<style type="text/css">
    *{margin: 0;padding: 0;}
    #myul li {list-style: none; float: left; border: 1px solid #ddd; width: 100px; height: 20px; text-align: center; line-height: 20px;}
    #container div{display: none; width: 303px; height: 300px; border: 1px solid #ddd; }
    #container .ssd{display: block;}
    .ssl{background: #abcdef;}
</style>
</head>
<body>
  <div id="tab">
    <ul id="myul">
      <li class="ssl">1</li>
      <li>2</li>
      <li>3</li>
    </ul>
    <div id="container">
      <div class="ssd">woshi1</div>
      <div>woshi2</div>
      <div>woshi3</div>
    </div>
  </div>
</body>

然后就是原生的js 实现tab标签 的代码

<script type="text/javascript">
var ul = document.getElementById('myul');
var li = ul.getElementsByTagName('li');
var con = document.getElementById('container');
var div = con.getElementsByTagName('div');
var len = li.length;
for (var i = 0; i < len; i++) {
li[i].index = i;
li[i].onclick=choose;
li[i].onmouseover = choose;
};
function choose(){
for(var j = 0; j < len; j++) {
    li[j].className = '';
    div[j].style.display = 'none';
  }
  this.className = 'ssl';
  div[this.index].style.display='block';
}
</script>

那我们改用jquery实现 代码如下

$('#myul li').click(choose);
$('#myul li').hover(choose);
function choose(){
  $(this).addClass('ssl').siblings().removeClass('ssl');
  $('#container div').eq($(this).index()).show().siblings().hide();
}

其实函数还可以简化:

function choose(){
  $(this).addClass('ssl').siblings().removeClass('ssl').parent().next().children().eq($(this).index()).show().siblings().hide();
}

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

Javascript 相关文章推荐
php常见的页面跳转方法汇总
Apr 15 Javascript
Vue.JS入门教程之事件监听
Dec 01 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
Mar 30 Javascript
vue2.0实现导航菜单切换效果
May 08 Javascript
基于vue的换肤功能的示例代码
Oct 10 Javascript
elemetUi 组件--el-upload实现上传Excel文件的实例
Oct 27 Javascript
Vue 项目中遇到的跨域问题及解决方法(后台php)
Mar 28 Javascript
layer关闭弹出窗口触发表单提交问题的处理方法
Sep 25 Javascript
VUE实现图片验证码功能
Nov 18 Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
Nov 05 Javascript
Node.js API详解之 dgram模块用法实例分析
Jun 05 Javascript
React中使用Vditor自定义图片详解
Dec 25 Javascript
jQuery实现点击某个div打开层,点击其他div关闭层实例分析(阻止冒泡)
Nov 18 #Javascript
浅谈javascript中遇到的字符串对象处理
Nov 18 #Javascript
文件上传,iframe跨域数据提交的实现
Nov 18 #Javascript
jQuery实现自动调用和触发某个事件的方法
Nov 18 #Javascript
jQuery与JavaScript节点创建方法的对比
Nov 18 #Javascript
用iframe实现不刷新整个页面上传图片的实例
Nov 18 #Javascript
Form表单按回车自动提交表单的实现方法
Nov 18 #Javascript
You might like
用PHP实现ODBC数据分页显示一例
2006/10/09 PHP
浅析php变量作用域的一些问题
2013/08/08 PHP
php中将一个对象保存到Session中的方法
2015/03/13 PHP
php检测url是否存在的方法
2015/04/14 PHP
php实现的RSS生成类实例
2015/04/23 PHP
Laravel Validator自定义错误返回提示消息并在前端展示
2019/05/09 PHP
Jquery 数据选择插件Pickerbox使用介绍
2012/08/24 Javascript
动态的创建一个元素createElement及删除一个元素
2014/01/24 Javascript
jQuery的$.proxy()应用示例介绍
2014/04/03 Javascript
jQuery焦点控制图层展示延迟隐藏的方法
2015/03/09 Javascript
JS实现超精简的链接列表在固定区域内滚动效果代码
2015/11/04 Javascript
基于jquery实现表格内容筛选功能实例解析
2016/05/09 Javascript
JS模拟实现ECMAScript5新增的数组方法
2017/03/20 Javascript
VUE element-ui 写个复用Table组件的示例代码
2017/11/18 Javascript
vue2.0 实现导航守卫的具体用法(路由守卫)
2018/05/17 Javascript
mock.js模拟前后台交互
2019/07/25 Javascript
JavaScript生成随机验证码代码实例
2019/09/28 Javascript
antd配置config-overrides.js文件的操作
2020/10/31 Javascript
python杀死一个线程的方法
2015/09/06 Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
2018/01/08 Python
Python docx库用法示例分析
2019/02/16 Python
Python的控制结构之For、While、If循环问题
2020/06/30 Python
想学画画?python满足你!
2020/12/24 Python
美国瑜伽服装和装备购物网站:Mukha Yoga
2019/02/22 全球购物
Linux面试题LINUX系统类
2014/11/19 面试题
公务员培训自我鉴定
2014/02/01 职场文书
工作会议方案
2014/05/21 职场文书
优秀班主任经验交流材料
2014/06/02 职场文书
天地会口号
2014/06/17 职场文书
2014年小学生教师节演讲稿范文
2014/09/10 职场文书
2015年大学学生会工作总结
2015/05/13 职场文书
物业公司管理制度
2015/08/05 职场文书
2016年心理学教育培训学习心得体会
2016/01/12 职场文书
2019年家电促销广告语集锦
2019/10/21 职场文书
Python中Numpy和Matplotlib的基本使用指南
2021/11/02 Python
SQL Server使用导出向导功能
2022/04/08 SQL Server