首頁 >web前端 >html教學 >html 和css 和js結合實現折疊選單的程式碼

html 和css 和js結合實現折疊選單的程式碼

不言
不言原創
2018-08-09 17:08:262139瀏覽

這篇文章帶給大家的內容是關於html 和css 和js結合實現折疊菜單的程式碼,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

1. 應用模板,將選單的相關資訊直接放在腳本資料中,使用循環生成

<script id="templateNavBar" type="text/html">
    <p class="nav-bar-logo">

    </p>
    {{each $data as item i}}
        <p class="nav-item {{item.class}}">{{item.name}}</p>
        {{if item.child != null}}
            <p class="childgroup">
                {{each item.child as child i}}
                    <p class="nav-item {{child.class}} child">{{child.name}}</p>
                {{/each}}
            </p>
        {{/if}}
    {{/each}}
</script>

2.在js中透過新增類別open的方式來實現選單的折疊和展開

               $(document).on(&#39;click&#39;,&#39;.nav-item:not(.child)&#39;,function () {
              console.log("choosing");
              var that = $(this);
              var next =that.next();
              if(next.hasClass(&#39;childgroup&#39;)){
                  if (that.hasClass(&#39;open&#39;))
                  {
                      // 收起当前菜单项
                      that.removeClass(&#39;open&#39;);
                      next.slideUp();
                  }
                  else{
                      // 将其他打开的菜单项收起来
                      if($(&#39;.nav-item:not(.child).open&#39;).next().hasClass(&#39;childgroup&#39;))
                      {
                          $(&#39;.nav-item:not(.child).open&#39;).next().slideUp();
                          $(&#39;.nav-item:not(.child).open&#39;).removeClass(&#39;open&#39;);
                      }
                      // 激活当前菜单项
                      that.addClass(&#39;open&#39;);
                      next.slideDown();
                  }
              }
              // 监听一级菜单结束

這裡面也有一些css的使用技巧在其中,希望自己能記住

相關推薦:

HTML中表格是如何操作製成的? (程式碼範例)

HTML物件:html一些物件屬性的介紹

#

以上是html 和css 和js結合實現折疊選單的程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn