原生js實現(xiàn)下拉菜單
更新時間:2021年09月16日 09:30:59 作者:夢里~花開又半夏…
這篇文章主要為大家詳細介紹了原生js實現(xiàn)下拉菜單,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
下拉菜單在實際生活中也挺常見的,它實現(xiàn)的js代碼與tab選卡,手風琴幾乎一樣,在此不過多贅述。
我仿照蘇寧易購官網(wǎng)寫了一個下拉菜單,實現(xiàn)代碼如下:
<!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 { padding: 0; margin: 0; } body{ background-color:#ccc; } li { list-style: none; } a{ text-decoration: none; } a:hover{ color: rgb(235, 98, 35); } .nav { float: right; margin-top: 10px; margin-right: 80px; display: flex; width: 270px; height: 100px; } .nav>li { width: 80px; margin: 5px; text-align: center; } .selected{ width: 80px; background-color:#fff; color: rgb(235, 98, 35); border:1px solid rgb(196, 194, 194); } .nav>li div:nth-child(1){ height: 30px; line-height: 30px; } .nav>li div:nth-child(2){ display: none; height: 160px; width: 80px; background-color: #fff; border:1px solid rgb(196, 194, 194); border-top:1px solid #fff; line-height: 70px; } .nav>li>div:nth-child(2) li{ height: 40px; line-height: 40px; } </style> </head> <body> <ul class="nav"> <li> <div><a herf="#">我的訂單</a></div> <div> <ul> <li><a herf="#">待支付</a></li> <li><a herf="#">待發(fā)貨</a></li> <li><a herf="#">待收貨</a></li> <li><a herf="#">待評價</a></li> </ul> </div> </li> <li> <div><a herf="#">我的易購</a></div> <div> <ul> <li><a herf="#">我的二手</a></li> <li><a herf="#">我的關注</a></li> <li><a herf="#">我的金融</a></li> <li><a herf="#">蘇寧會員</a></li> </ul> </div> </li> <li> <div><a herf="#">我的主頁</a></div> <div> <ul> <li><a herf="#">頭像</a></li> <li><a herf="#">昵稱</a></li> <li><a herf="#">簽名</a></li> <li><a herf="#">地址</a></li> </ul> </div> </li> </ul> <script> var s=document.querySelectorAll(".nav li div:nth-child(1)"); var d=document.querySelectorAll(".nav li div:nth-child(2)"); for(var i=0;i<s.length;i++){ s[i].index=i; s[i].onmouseover=function(){ for(var j=0;j<s.length;j++){ s[j].className=""; d[j].style.display="none"; } this.className="selected"; d[this.index].style.display="block"; } } </script> </body> </html>
效果圖如下:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
談談encodeURI和encodeURIComponent以及escape的區(qū)別與應用
encodeURI和encodeURIComponent以及escape,這三個都是用來編碼的,本篇文章給大家介紹encodeURI和encodeURIComponent以及escape的區(qū)別與應用,感興趣的朋友一起學習吧2015-11-11js實現(xiàn)完全自定義可帶多級目錄的網(wǎng)頁鼠標右鍵菜單方法
這篇文章主要介紹了js實現(xiàn)完全自定義可帶多級目錄的網(wǎng)頁鼠標右鍵菜單方法,實例分析了javascript實現(xiàn)自定義網(wǎng)頁鼠標右鍵彈出菜單的技巧,非常具有實用價值,需要的朋友可以參考下2015-02-02JavaScript中解析JSON數(shù)據(jù)的三種方法
這篇文章主要介紹了JavaScript中解析JSON數(shù)據(jù)的三種方法,本文講解了eval()方法、new Function方法、JSON.parse()方法等三種方法,需要的朋友可以參考下2015-07-07js實現(xiàn)網(wǎng)頁右上角滑出會自動消失大幅廣告的方法
這篇文章主要介紹了js實現(xiàn)網(wǎng)頁右上角滑出會自動消失大幅廣告的方法,是javascript廣告特效的典型應用,非常具有實用價值,需要的朋友可以參考下2015-02-02typescript使用 ?. ?? ??= 運算符的方法步驟
本文主要介紹了typescript使用 ?. ?? ??= 運算符的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-01-01