Maison  >  Article  >  interface Web  >  Code pour implémenter un menu pliant en utilisant HTML, CSS et JS

Code pour implémenter un menu pliant en utilisant HTML, CSS et JS

不言
不言original
2018-08-09 17:08:262115parcourir

Le contenu de cet article concerne le code d'implémentation du menu pliant en combinant HTML, CSS et JS. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

1. Appliquez le modèle, mettez les informations pertinentes du menu directement dans les données du script et utilisez une boucle pour générer

<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. Réalisez le pliage et le dépliage du menu

               $(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();
                  }
              }
              // 监听一级菜单结束

Il contient également quelques compétences d'utilisation du CSS J'espère que vous vous en souviendrez

Recommandations associées :

HTML Comment est réalisée la table ? (Exemple de code)

Objet HTML : introduction à certaines propriétés d'objet du HTML

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn