亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

簡單實現js點擊展開二級菜單功能

 更新時間:2017年05月16日 10:31:33   作者:well2049  
這篇文章主要教大家簡單實現js點擊展開二級菜單功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

雖然,jQuery已經非常好用了,但是實際的開發(fā)項目中,還是有很多限制,比如項目組奇葩的要求,不能使用任何插件,當然,也是考慮插件占用資源,畢竟100+KB對與小型項目來說還是非常大的。我最近就遇到做個點擊展開二級菜單的要求,當然只能用原生的JS去寫來實現,我借鑒了網上的一個案例,補充一下,分享一下:

如果,默認打開頁面進來時二級菜單是隱藏的,需要點擊才能展現二級菜單,再點擊就是隱藏二級菜單。這里有兩個點,實現展現和隱藏用display="block"和display="none",另外就是要做一個判斷,if   else的判斷當前是block還是none。

<!DOCTYPE html> 
<html lang="en"> 
<head> 
 <meta charset="UTF-8"> 
 <title>Document</title> 
 <style type="text/css"> 
  #sub_menu_1,#sub_menu_2{ 
   display: none; 
  } 
  ul li:hover{ 
   cursor: pointer; 
  } 
 </style> 
</head> 
<body> 
 <ul> 
  <li onclick = "f('sub_menu_1')">一級菜單1 
   <ul id="sub_menu_1"> 
    <li>二級餐單1</li> 
    <li>二級餐單1</li> 
    <li>二級餐單1</li> 
    <li>二級餐單1</li> 
   </ul> 
  </li> 
  <li onclick="f('sub_menu_2')">一級菜單2 
   <ul id="sub_menu_2"> 
    <li>二級菜單2</li> 
    <li>二級菜單2</li> 
    <li>二級菜單2</li> 
    <li>二級菜單2</li> 
   </ul> 
 
  </li> 
  <li>一級餐單3</li> 
 </ul> 
 <script type="text/javascript"> 
  function f(str){ 
    var sub_menu = document.getElementById(str); 
    var dis_v = sub_menu.style.display; 
     
    if(dis_v == "block") 
     sub_menu.style.display = "none"; 
    else 
     sub_menu.style.display = "block"; 
      
   } 
   
 </script> 
</body> 
</html> 

有個注意事項就是一級菜單的li不能添加a標簽,不然會不起作用。
如果,你的頁面默認進來二級菜單是展現的,點擊時才關閉。直接把style標簽的樣式display="none"去掉就可以。同時需要修改一下js。

<script type="text/javascript"> 
  function f(str){ 
    var sub_menu = document.getElementById(str); 
    var dis_v = sub_menu.style.display; 
     
    if(dis_v == "none") 
     sub_menu.style.display = "block"; 
    else 
     sub_menu.style.display = "none"; 
      
   } 
   
 </script> 

仔細看,不然你就會發(fā)現你需要點擊兩次才會出現想要的效果。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 基于JS實現一個可拖拽的容器布局組件

    基于JS實現一個可拖拽的容器布局組件

    這篇文章主要為大家詳細介紹了如何基于JavaScript實現一個可拖拽的容器布局組件,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-12-12
  • JavaScript數組reduce常見實例方法

    JavaScript數組reduce常見實例方法

    reduce方法在數組的每個元素上執(zhí)行用戶提供的回調函數,即"reducer",它傳入對前一個元素進行計算的返回值,結果是單個值,它是在數組的所有元素上運行reducer的結果,下面這篇文章主要給大家介紹了關于JavaScript數組reduce常見實例方法的相關資料,需要的朋友可以參考下
    2022-05-05
  • bootstrap中模態(tài)框、模態(tài)框的屬性實例詳解

    bootstrap中模態(tài)框、模態(tài)框的屬性實例詳解

    這篇文章主要介紹了bootstrap中模態(tài)框、模態(tài)框的屬性實例詳解,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • js中斷 forEach 循環(huán)的方法匯總

    js中斷 forEach 循環(huán)的方法匯總

    這篇文章主要介紹了js中斷 forEach 循環(huán)的幾種方法,主要方法還是通過其它方式代替 forEach 循環(huán)的中斷,只有方法4 使用 try-catch 結構是實際意義上中斷 forEach 循環(huán),需要的朋友可以參考下
    2023-10-10
  • Unicode 編碼轉換器

    Unicode 編碼轉換器

    Unicode 編碼轉換器...
    2007-01-01
  • JS 添加千分位與去掉千分位的示例

    JS 添加千分位與去掉千分位的示例

    本文為大家詳細介紹下使用JS添加千分位以及去掉千分位的實現代碼,感興趣的朋友可以參考下哈,希望對大家有所幫助
    2013-07-07
  • Cropper.js進階之裁剪后保存至本地實現示例

    Cropper.js進階之裁剪后保存至本地實現示例

    這篇文章主要為大家介紹了Cropper.js進階之裁剪后保存至本地實現示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • jquery自定義插件結合baiduTemplate.js實現異步刷新(附源碼)

    jquery自定義插件結合baiduTemplate.js實現異步刷新(附源碼)

    本文主要介紹了jquery自定義插件結合baiduTemplate.js實現異步刷新的具體實例,具有很好的參考價值,需要的朋友一起來看下吧
    2016-12-12
  • JS實現HTML表格排序功能

    JS實現HTML表格排序功能

    這篇文章主要為大家詳細介紹了JS實現HTML表格排序功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • js中數組(Array)的排序(sort)注意事項說明

    js中數組(Array)的排序(sort)注意事項說明

    本篇文章主要是對js中數組(Array)的排序(sort)注意事項進行了說明介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01

最新評論