JavaScript实现Tab选项卡切换


Posted in Javascript onFebruary 13, 2020

本文实例为大家分享了js实现选项卡切换的具体代码,供大家参考,具体内容如下

会用到原生js的dom操作

JavaScript实现Tab选项卡切换

html

<body>
 <div id="tab">
 <div id="tab_header">
  <ul>
  <li class="seclect">1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
  </ul>
 </div>
 <div id="tab_body">
  <div class="dom" style="display: block;">
  <ul>
   <li>1</li>
   <li>1</li>
   <li>1</li>
   <li>1</li>
  </ul>
  </div>
  <div class="dom">
  <ul>
   <li>2</li>
   <li>2</li>
   <li>2</li>
   <li>2</li>
  </ul>
  </div>
  <div class="dom">
  <ul>
   <li>3</li>
   <li>3</li>
   <li>3</li>
   <li>3</li>
  </ul>
  </div>
  <div class="dom">
  <ul>
   <li>4</li>
   <li>4</li>
   <li>4</li>
   <li>4</li>
  </ul>
  </div>
  <div class="dom">
  <ul>
   <li>5</li>
   <li>5</li>
   <li>5</li>
   <li>5</li>
  </ul>
  </div>
 </div>
</div>

css就不放了

js

window.onload = function(){
 var allLis = $('tab_header').getElementsByTagName('li');
 var allDoms = $('tab_body').getElementsByClassName('dom');
 console.log(allLis,allDoms);
 // 遍历拿到的allLis
 for(var i =0; i<allLis.length;i++){
 var li = allLis[i];
 li.index = i; 
 li.onmouseover = function(){
  // 排他思想 将所有的class清空
  for(var j = 0;j<allLis.length;j++){
  allLis[j].className = '';
  allDoms[j].style.display='none';
  }
  this.className = 'seclect';
  allDoms[this.index].style.display='block';
 }
 }
}
function $(id){
 return typeof id === "string" ? document.getElementById(id) : null;
}

这里面的 function $(id) 是我封装的一个dom id选择器,在里面先拿到准备操作的事件源,遍历拿到的数组,onmouseover鼠标移入时,再次遍历一数组,将数组里所有的classname 变为空,以及display样式隐藏,在移入时,移入哪个,给哪个赋值即可。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JScript内置对象Array中元素的删除方法
Mar 08 Javascript
List the Stored Procedures in a SQL Server database
Jun 20 Javascript
在JavaScript中监听IME键盘输入事件
May 29 Javascript
JS中获取函数调用链所有参数的方法
May 07 Javascript
javascript模拟C#格式化字符串
Aug 26 Javascript
分享12个实用的jQuery代码片段
Mar 09 Javascript
Vue.js实现一个漂亮、灵活、可复用的提示组件示例
Mar 17 Javascript
使用JQ完成表格隔行换色的简单实例
Aug 25 Javascript
使用typescript开发angular模块并发布npm包
Apr 19 Javascript
jsonp跨域获取数据的基础教程
Jul 01 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
Jun 08 Javascript
JS猜数字游戏实例讲解
Jun 30 Javascript
Angular 多模块项目构建过程
Feb 13 #Javascript
小程序卡片切换效果组件wxCardSwiper的实现
Feb 13 #Javascript
JavaScript实现省市区三级联动
Feb 13 #Javascript
jquery传参及获取方式(两种方式)
Feb 13 #jQuery
JS实现页面数据懒加载
Feb 13 #Javascript
node.js中fs文件系统模块的使用方法实例详解
Feb 13 #Javascript
原生JS与JQ获取元素的区别详解
Feb 13 #Javascript
You might like
PHP strtr() 函数使用说明
2008/11/21 PHP
php配置php-fpm启动参数及配置详解
2013/11/04 PHP
浅析Yii2中GridView常见操作
2016/04/22 PHP
php-app开发接口加密详解
2018/04/18 PHP
PHPExcel实现的读取多工作表操作示例
2020/04/14 PHP
一段利用WSH获取登录时间的jscript代码
2008/05/11 Javascript
javascript 带有滚动条的表格,标题固定,带排序功能.
2009/11/13 Javascript
jQuery的观察者模式详解
2014/12/22 Javascript
JavaScript设计模式之原型模式(Object.create与prototype)介绍
2014/12/28 Javascript
深入理解JavaScript系列(34):设计模式之命令模式详解
2015/03/03 Javascript
JavaScript匿名函数之模仿块级作用域
2015/12/12 Javascript
Angularjs---项目搭建图文教程
2016/07/08 Javascript
工厂模式在JS中的实践
2017/01/18 Javascript
Vuejs实现带样式的单文件组件新方法
2017/05/02 Javascript
vue.js学习之vue-cli定制脚手架详解
2017/07/02 Javascript
node.js中grunt和gulp的区别详解
2017/07/17 Javascript
laydate 显示结束时间不小于开始时间的实例
2017/08/11 Javascript
详解Vue CLI3 多页应用实践和源码设计
2018/08/30 Javascript
Nuxt.js实现一个SSR的前端博客的示例代码
2019/09/06 Javascript
Vue实现穿梭框效果
2020/09/30 Javascript
[01:01:22]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
教你如何将 Sublime 3 打造成 Python/Django IDE开发利器
2014/07/04 Python
django定期执行任务(实例讲解)
2017/11/03 Python
使用Pyinstaller的最新踩坑实战记录
2017/11/08 Python
Python各类图像库的图片读写方式总结(推荐)
2018/02/23 Python
IDLE下Python文件编辑和运行操作
2020/04/25 Python
在Tensorflow中实现leakyRelu操作详解(高效)
2020/06/30 Python
Python爬虫教程知识点总结
2020/10/19 Python
基于django和dropzone.js实现上传文件
2020/11/24 Python
关于python中remove的一些坑小结
2021/01/04 Python
伦敦最著名的老字号百货公司:Selfridges(塞尔福里奇百货)
2016/07/25 全球购物
adidas菲律宾官网:adidas PH
2020/02/07 全球购物
在DELPHI中调用存储过程和使用内嵌SQL哪种方式更好
2016/11/22 面试题
2015初中团委工作总结
2015/07/28 职场文书
党风廉政承诺书2016
2016/03/25 职场文书
PyTorch dropout设置训练和测试模式的实现
2021/05/27 Python