javascript實(shí)現(xiàn)下拉菜單效果
用Javascript實(shí)現(xiàn)下拉菜單,供大家參考,具體內(nèi)容如下
正在學(xué)習(xí)大前端中,有代碼和思路不規(guī)范不正確的地方往多多包涵,感謝指教
下拉菜單,或者側(cè)拉菜單在實(shí)際開(kāi)發(fā)當(dāng)中非常的實(shí)用
代碼:
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Title</title> <style> *{ padding: 0; margin: 0; border: 0; } .menu{ width: 100%; height: 50px; border: 1px solid lightyellow; box-shadow: 0 2px 5px black; } .menu div{ /*margin-top: 10px;*/ float: left; width: 19.82%; height: 50px; /* border: 1px solid red;*/ text-align: center; } button{ margin-top: 15px; cursor: pointer; width: 25px; height: 15px; background-color: pink; } .show1{ display: none; width: 19.82%; height: 250px; /*border: 1px solid black;*/ } .show1 div{ border: 1px solid pink; width: 247px; height: 48px; text-align: center; } a{ text-decoration: none; display: block; margin-top: 10px; } a:hover{ color: #ff242d; font-size: 25px; } </style></head><body> <div class='menu'> <div>下拉1 <button>^</button> </div> <div>下拉2 <button>^</button> </div> <div>下拉3 <button>^</button> </div> <div>下拉4 <button>^</button> </div> <div>下拉5 <button>^</button> </div> </div> <div class='show1'> <div><a href='http://www.gepszalag.com/bcjs/14180.html#' >4654tyyut</a></div> <div><a href='http://www.gepszalag.com/bcjs/14180.html#' >4654</a></div> <div><a href='http://www.gepszalag.com/bcjs/14180.html#' >sdf</a></div> <div><a href='http://www.gepszalag.com/bcjs/14180.html#' >sdf</a></div> <div><a href='http://www.gepszalag.com/bcjs/14180.html#' >tert</a></div> </div> <script> var btn=document.querySelector(’button’) var show1=document.querySelector(’.show1’) var flag=0 btn.onclick=function () { if (flag === 0) { show1.style.display = ’block’ flag=1 }else { show1.style.display=’none’ flag=0 } } </script></body></html>
代碼解釋
這里主要就是用script的onclick來(lái)進(jìn)行實(shí)現(xiàn),這里我用到的按鈕,也可以換成其他的東西,做法都是類(lèi)似的。
onclick點(diǎn)擊相應(yīng)的東西過(guò)后,便會(huì)觸發(fā)事件,調(diào)用函數(shù),然后判斷flag的值來(lái)進(jìn)行相應(yīng)的操作,隱藏/顯示div。
這里的flag是關(guān)鍵,這個(gè)變量在點(diǎn)擊事件發(fā)生時(shí)不斷在0.1之間變化,點(diǎn)擊一次即該函數(shù)被執(zhí)行一次,即循環(huán)一次,也就是判斷flag的值,從而達(dá)到顯示/隱藏的效果
演示效果
未下拉時(shí)
下拉后
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. IDEA EasyCode 一鍵幫你生成所需代碼2. IntelliJ IDEA設(shè)置條件斷點(diǎn)的方法步驟3. Java構(gòu)建JDBC應(yīng)用程序的實(shí)例操作4. Express 框架中使用 EJS 模板引擎并結(jié)合 silly-datetime 庫(kù)進(jìn)行日期格式化的實(shí)現(xiàn)方法5. ThinkPHP5 通過(guò)ajax插入圖片并實(shí)時(shí)顯示(完整代碼)6. javascript設(shè)計(jì)模式 ? 建造者模式原理與應(yīng)用實(shí)例分析7. Spring應(yīng)用拋出NoUniqueBeanDefinitionException異常的解決方案8. Python使用oslo.vmware管理ESXI虛擬機(jī)的示例參考9. 一篇文章帶你了解JavaScript-對(duì)象10. 使用AJAX(包含正則表達(dá)式)驗(yàn)證用戶(hù)登錄的步驟
