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 相关文章推荐
js添加table的行和列 具体实现方法
Jul 22 Javascript
javascript异步编程代码书写规范Promise学习笔记
Feb 11 Javascript
Js和JQuery获取鼠标指针坐标的实现代码分享
May 25 Javascript
基于jQuery实现的双11天猫拆红包抽奖效果
Dec 01 Javascript
整理JavaScript对DOM中各种类型的元素的常用操作
May 05 Javascript
javascript如何定义对象数组
Jun 07 Javascript
jQuery事件处理的特征(事件命名机制)
Aug 23 Javascript
JavaScript中最容易混淆的作用域、提升、闭包知识详解(推荐)
Sep 05 Javascript
详解使用vuex进行菜单管理
Dec 21 Javascript
React 使用recharts实现散点地图的示例代码
Dec 07 Javascript
javascript中如何判断类型汇总
May 14 Javascript
Weex开发之地图篇的具体使用
Oct 16 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调用数据库的存贮过程!
2006/10/09 PHP
发布一个用PHP fsockopen写的HTTP下载的类
2007/02/22 PHP
php eval函数用法 PHP中eval()函数小技巧
2012/10/31 PHP
无刷新动态加载数据 滚动条加载适合评论等页面
2013/10/16 PHP
PHP实现把文本中的URL转换为链接的auolink()函数分享
2014/07/29 PHP
既简单又安全的PHP验证码 附调用方法
2016/06/02 PHP
php版微信发红包接口用法示例
2016/09/23 PHP
PHP抽象类基本用法示例
2018/12/28 PHP
Laravel 登录后清空COOKIE的操作方法
2019/10/14 PHP
JQuery 风格的HTML文本转义
2009/07/01 Javascript
jquery实现带单选按钮的表格行选中时高亮显示
2013/08/01 Javascript
火狐下table中创建form导致两个table之间出现空白
2013/09/02 Javascript
jQuery动态效果显示人物结构关系图的方法
2015/05/07 Javascript
浅析location.href跨窗口调用函数
2016/11/22 Javascript
discuz表情的JS提取方法分析
2017/03/22 Javascript
浅谈React组件之性能优化
2018/03/02 Javascript
vue3.0 CLI - 2.3 - 组件 home.vue 中学习指令和绑定
2018/09/14 Javascript
vue.js 子组件无法获取父组件store值的解决方式
2019/11/08 Javascript
nodejs nedb 封装库与使用方法示例
2020/02/06 NodeJs
[01:46]TI4西雅图DOTA2前线报道 中国选手抱团调时差
2014/07/08 DOTA
python实现带错误处理功能的远程文件读取方法
2015/04/29 Python
Django的HttpRequest和HttpResponse对象详解
2018/01/26 Python
详解Python3中ceil()函数用法
2019/02/19 Python
Python实现ATM系统
2020/02/17 Python
python实现批量修改文件名
2020/03/23 Python
Pytho爬虫中Requests设置请求头Headers的方法
2020/09/22 Python
Anaconda的安装与虚拟环境建立
2020/11/18 Python
CK加拿大官网:Calvin Klein加拿大
2020/03/14 全球购物
Linux机考试题
2015/10/16 面试题
手机促销活动方案
2014/02/05 职场文书
数控专业大学毕业生职业规划范文
2014/02/06 职场文书
《分一分》教学反思
2014/04/13 职场文书
工作总结与自我评价
2014/09/18 职场文书
四查四看整改措施
2014/09/19 职场文书
师德承诺书
2015/01/20 职场文书
2016年寒假学习心得体会
2015/10/09 职场文书