国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

4種JavaScript實現(xiàn)簡單tab選項卡切換的方法

2019-11-20 10:51:17
字體:
供稿:網(wǎng)友

本文實例講解了4種JavaScript實現(xiàn)簡單tab選項卡切換的方法,分享給大家供大家參考,具體內(nèi)容如下
效果圖:

 

方法一:for循環(huán)+if判斷當(dāng)前點擊與自定義數(shù)組是否匹配

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>tab切換</title> <style type="text/css"> button {  width:120px;  height: 32px;  line-height: 32px;  background-color: #ccc;  font-size: 24px; } div {  display: none;  width:200px;  height: 200px;  font-size: 72px;  color:#ddd;  background-color: green;  border:1px solid black; } </style></head><body> <button style="background-color: yellow;">1</button> <button>2</button> <button>3</button> <button>4</button> <div style="display:block;">1</div> <div>2</div> <div>3</div> <div>4</div> <script type="text/javascript"> //定義數(shù)組并獲取數(shù)組內(nèi)各個的節(jié)點 var buttonArr = document.getElementsByTagName("button"); var divArr = document.getElementsByTagName("div"); for(var i = 0; i < buttonArr.length;i++) { buttonArr[i].onclick = function() {  //this   // alert(this.innerHTML)  //for循環(huán)遍歷button數(shù)組長度  for(var j = 0; j < buttonArr.length; j++) {  //重置所有的button樣式  buttonArr[j].style.backgroundColor = "#ccc";  //給當(dāng)前的(點擊的那個)那個button添加樣式  this.style.backgroundColor = "yellow";  //隱藏所有的div  divArr[j].style.display = "none";  //判斷當(dāng)前點擊是按鈕數(shù)組中的哪一個?  if(this == buttonArr[j]) {   // alert(j);   //顯示點擊按鈕對應(yīng)的div   divArr[j].style.display = "block";  }  } } } </script></body></html>

方法二:自定義index為當(dāng)前點擊

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>tab切換</title> <style type="text/css"> button {  width:120px;  height: 32px;  line-height: 32px;  background-color: #ccc;  font-size: 24px; } div {  display: none;  width:200px;  height: 200px;  font-size: 72px;  color:#ddd;  background-color: green;  border:1px solid black; } </style></head><body> <button style="background-color: yellow;">1</button> <button>2</button> <button>3</button> <button>4</button> <div style="display:block;">1</div> <div>2</div> <div>3</div> <div>4</div> <script type="text/javascript"> var buttonArr = document.getElementsByTagName("button"); var divArr = document.getElementsByTagName("div"); for(var i = 0; i < buttonArr.length;i++) { buttonArr[i].index = i; // buttonArr[i].setAttribute("index",i); buttonArr[i].onclick = function() {  for(var j = 0; j < buttonArr.length; j++) {  buttonArr[j].style.backgroundColor = "#ccc";  buttonArr[this.index].style.backgroundColor = "yellow";  divArr[j].style.display = "none";  divArr[this.index].style.display = "block";  } } }  </script></body></html>

方法三:className

<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <title>tab</title> <style type="text/css"> * {padding:0; margin:0;} button {  background-color: #ccc;  width:80px;  height: 30px; } .btn-active {  background-color: yellow;  font-weight:bold;  font-size: 14px; } div{  width:200px;  height: 200px;  font-size: 64px;  background-color: #0c0;  display: none;  color:#fff; } .div-active {  display: block; } </style></head><body> <button class="btn-active">按鈕1</button> <button>按鈕2</button> <button>按鈕3</button> <button>按鈕4</button> <div class="div-active">1</div> <div>2</div> <div>3</div> <div>4</div> <script type="text/javascript"> //1.先獲取元素 var buttonList = document.getElementsByTagName("button"); var divList = document.getElementsByTagName("div"); //2.添加事件 for(var i = 0; i < buttonList.length; i++) { buttonList[i].index = i; buttonList[i].onclick = function() {  for(var j = 0; j < buttonList.length;j++) {  buttonList[j].className = "";  divList[j].className = "";  }  this.className = "btn-active";  divList[this.index].className = "div-active"; } } </script></body></html>

方法四:className+匿名函數(shù)的自執(zhí)行

<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <title>tab</title> <style type="text/css"> * {padding:0; margin:0;} button {  background-color: #ccc;  width:80px;  height: 30px; } .btn-active {  background-color: yellow;  font-weight:bold;  font-size: 14px; } div{  width:200px;  height: 200px;  font-size: 64px;  background-color: #0c0;  display: none;  color:#fff; } .div-active {  display: block; } </style></head><body> <button class="btn-active">按鈕1</button> <button>按鈕2</button> <button>按鈕3</button> <button>按鈕4</button> <div class="div-active">1</div> <div>2</div> <div>3</div> <div>4</div> <script type="text/javascript"> //1.先獲取元素 var buttonList = document.getElementsByTagName("button"); var divList = document.getElementsByTagName("div"); //2.添加事件 for(var i = 0; i < buttonList.length; i++) { (function(i){ //匿名函數(shù)自執(zhí)行  buttonList[i].onclick = function() {  for(var j = 0; j < buttonList.length;j++) {   buttonList[j].className = "";   divList[j].className = "";  }  this.className = "btn-active";  divList[i].className = "div-active";  } })(i) } </script></body></html>

如果大家還想深入學(xué)習(xí),可以點擊兩個精彩的專題:javascript選項卡操作方法匯總 jquery選項卡操作方法匯總

希望本文所述對大家學(xué)習(xí)javascript程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 卓资县| 遵义县| 武城县| 巍山| 永兴县| 饶阳县| 白水县| 浏阳市| 河东区| 濮阳市| 扶绥县| 临泽县| 上犹县| 双峰县| 沿河| 五常市| 临城县| 辽阳县| 禹州市| 临汾市| 宜良县| 天全县| 博客| 静安区| 海南省| 丹棱县| 平度市| 会宁县| 南平市| 和平县| 乌拉特后旗| 成武县| 夹江县| 萨嘎县| 铜川市| 缙云县| 中方县| 长乐市| 蕉岭县| 耒阳市| 泌阳县|