ホームページ  >  記事  >  ウェブフロントエンド  >  HTML、CSS、JSを使用して折りたたみメニューを実装するコード

HTML、CSS、JSを使用して折りたたみメニューを実装するコード

不言
不言オリジナル
2018-08-09 17:08:262071ブラウズ

この記事の内容は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で開いたクラスを追加して、メニューの折りたたみと展開を実現します

               $(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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。