用js實現(xiàn)簡單的tab選項卡
tab選卡 現(xiàn)實網(wǎng)頁的使用頻率極高,基本上每個網(wǎng)頁都需要使用一個或多個tab選卡
我們可以用js實現(xiàn)簡單的tab選卡效果
代碼如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>簡單的選卡效果</title> <style> body,ul{ margin:0; padding:0; } li{ list-style: none; } .nav ul{ display: flex; } .nav li{ width: 40%; margin: 1rem; text-align: center; font-size: 1.3rem; } .selected{ background-color: yellow; } .content div{ display: none } /* 初始的時候 只讓第一塊內(nèi)容顯示出來 */ .content div:nth-child(1){ display: block; } </style> </head> <body> <div class="nav"> <ul> <!-- 初始的時候 讓第一個選項被選中 --> <li class="selected">導(dǎo)航1</li> <li>導(dǎo)航2</li> <li>導(dǎo)航3</li> </ul> </div> <div class="content"> <div>內(nèi)容1</div> <div>內(nèi)容2</div> <div>內(nèi)容3</div> </div> <script> //獲得導(dǎo)航的所有選項 var li=document.querySelectorAll(".nav li"); //獲得內(nèi)容的所有div var div=document.querySelectorAll(".content div") for(var i=0;i<li.length;i++){ //關(guān)鍵 讓li與div建立聯(lián)系 li[i].index=i; li[i].onmouseover=function(){ //將所有選項樣式清空,所有內(nèi)容隱藏 for(var j=0;j<li.length;j++){ li[j].className=""; div[j].style.display="none" } //為鼠標(biāo)懸浮的選項設(shè)置樣式 其對應(yīng)的div顯現(xiàn)出來 this.className="selected"; div[this.index].style.display="block"; } } </script> </body> </html>
需要注意的是:this,此時的this相當(dāng)于li[i]。
li[i].index=i; 這一步必不可少,這是讓li與div建立聯(lián)系的關(guān)鍵,如果直接把div[this.index].style.display=“block”;這句代碼改為div[i].style.display=“block”;將會達不到效果,這是因為i的值一直在加一,最后將會等于li.length,使得將出現(xiàn) 不管鼠標(biāo)在哪個選項 每個div都不會顯示的錯誤結(jié)果。
正確的效果圖為:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
微信小程序?qū)崿F(xiàn)簡單input正則表達式驗證功能示例
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)簡單input正則表達式驗證功能,結(jié)合實例形式分析了微信小程序input組件事件綁定及正則驗證相關(guān)操作技巧,需要的朋友可以參考下2017-11-11bootstrap的3級菜單樣式,支持母版頁保留打開狀態(tài)實現(xiàn)方法
下面小編就為大家?guī)硪黄猙ootstrap的3級菜單樣式,支持母版頁保留打開狀態(tài)實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11JS前端組件設(shè)計以業(yè)務(wù)為導(dǎo)向?qū)嵺`思考
這篇文章主要為大家介紹了JS前端組件設(shè)計以業(yè)務(wù)為導(dǎo)向?qū)嵺`思考,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-03-03javascript實現(xiàn)驗證IP地址等相關(guān)信息代碼
本文給大家分享的是一組判斷IP地址是否合法,判斷子網(wǎng)掩碼是否合法,驗證輸入的網(wǎng)關(guān)地址是否合法的javascript代碼,十分的簡單實用,有需要的小伙伴可以參考下。2015-05-05詳解element-ui 表單校驗 Rules 配置 常用黑科技
這篇文章主要介紹了element-ui 表單校驗 Rules 配置 常用黑科技,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07