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 相关文章推荐
服务器安全设置的几个注册表设置
Jul 28 Javascript
jQuery实现为图片添加镜头放大效果的方法
Jun 25 Javascript
jQuery实现图片走马灯效果的原理分析
Jan 16 Javascript
jquery简单插件制作(fn.extend)完整实例
May 24 Javascript
JS打印组合功能
Aug 04 Javascript
xtemplate node.js 的使用方法实例解析
Aug 22 Javascript
[原创]jquery判断元素内容是否为空的方法
May 04 jQuery
jQuery实现的五星点评功能【案例】
Feb 18 jQuery
jQuery选择器之基本选择器用法实例分析
Feb 19 jQuery
JS表单验证插件之数据与逻辑分离操作实例分析【策略模式】
May 01 Javascript
原生javascript如何实现共享onload事件
Jul 03 Javascript
vue实现抽屉弹窗效果
Nov 15 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 array_merge函数
2014/08/31 PHP
PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法
2017/06/20 PHP
PHP程序员学习使用Swoole的理由
2018/06/24 PHP
PHP实现的函数重载功能示例
2018/08/03 PHP
JavaScript去除空格的几种方法
2006/10/03 Javascript
Convert Seconds To Hours
2007/06/16 Javascript
项目实践之javascript技巧
2007/12/06 Javascript
js 调整select 位置的函数
2008/02/21 Javascript
制作高质量的JQuery Plugin 插件的方法
2010/04/20 Javascript
jquery一句话全选/取消全选
2011/03/01 Javascript
打开新窗口关闭当前页面不弹出关闭提示js代码
2013/03/18 Javascript
jQuery插件Elastislide实现响应式的焦点图无缝滚动切换特效
2015/04/12 Javascript
基于jquery实现智能表单验证操作
2016/05/09 Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
2016/07/08 Javascript
jquery注册文本框获取焦点清空,失去焦点赋值的简单实例
2016/09/08 Javascript
javascript中BOM基础知识总结
2017/02/14 Javascript
js实现自定义进度条效果
2017/03/15 Javascript
JS滚动到指定位置导航栏固定顶部
2017/07/03 Javascript
详解使用vuex进行菜单管理
2017/12/21 Javascript
JavaScript 对引擎、运行时、调用堆栈的概述理解
2018/10/22 Javascript
[53:52]EG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[01:14]2019完美世界城市挑战赛(秋季赛)全国总决赛精彩花絮
2020/01/08 DOTA
Python 描述符(Descriptor)入门
2016/11/20 Python
logging level级别介绍
2020/02/21 Python
win10下python3.8的PIL库安装过程
2020/06/08 Python
html5 localStorage本地存储_动力节点Java学院整理
2017/07/06 HTML / CSS
长青弘远的面试题
2012/06/09 面试题
英语专业毕业生求职简历的自我评价
2013/10/24 职场文书
学校安全工作制度
2014/01/19 职场文书
社区庆中秋节活动方案
2014/02/07 职场文书
奥利奥广告词
2014/03/20 职场文书
白血病募捐倡议书
2014/05/14 职场文书
校友会致辞
2015/07/30 职场文书
源码解读Spring-Integration执行过程
2021/06/11 Java/Android
MySQL8.0升级的踩坑历险记
2021/11/01 MySQL
MySQL实现用逗号进行拼接、以逗号进行分割
2022/12/24 MySQL