首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多级手风琴菜单

多级手风琴菜单
EN

Stack Overflow用户
提问于 2019-01-25 21:01:40
回答 1查看 1K关注 0票数 1

我正试图为这个项目制作一个多级手风琴菜单。我的手风琴菜单适用于1级,但2级不能工作(ex.Project信息>关键文档)。从WordPress菜单生成的HTML代码您可以在这里查看现场演示

https://codepen.io/pagol/pen/qgbXGy

请将输出窗口调整为移动大小。\

我认为需要调整一下我的javascript。贝娄是我的剧本

代码语言:javascript
复制
var accordion_head = $('.accordion li > a, .accordion li > li > a'),
        accordion_body = $('.accordion li > .sub-menu, .accordion li > li > .sub-menu');

    // Open the first tab on load

    //accordion_head.first().addClass('active').next().slideDown('normal');

    // Click function

    accordion_head.on('click', function(event) {

        // Disable header links

        //event.preventDefault();

        // Show and hide the tabs on click

        if ($(this).attr('class') != 'active'){
            accordion_body.slideUp('normal');
            $(this).next().stop(true,true).slideToggle('normal');
            accordion_head.removeClass('active');
            $(this).addClass('active');
        }

    });

我主要想创建WordPress菜单,在桌面上它会显示水平菜单和移动菜单,它会显示手风琴菜单。我尝试了很多方法,但都失败了,然后我使用了两个菜单标记,一个用于移动,一个用于我的桌面。如果你们知道任何菜单单标记可以解决我的目的,那么也可以。

EN

回答 1

Stack Overflow用户

发布于 2019-01-25 23:11:42

我们可以使用媒体查询触发桌面导航,并将其放在移动设备上。您可以清理CSS以容纳此工作版本,但如下所示:https://codepen.io/anon/pen/PVZabq

在移动平台上,桌面导航消失,移动导航出现。当伸展回桌面,移动导航消失,桌面菜单显示。

以下是添加的比特:

代码语言:javascript
复制
<div class="desktop-nav">
  <ul class="accordion">
    <li><a href="#">Home</a></li>
        <li class="link"><a href="#">Project Information</a>
          <ul class="sub-menu">
            <li><a href="#key-results">Key Results</a></li>
            <li><a href="#partners">Partner NGOs</a></li>
            <li class="link"><a href="#">Key Documents</a>
              <ul class="sub-menu">
                <li><a href="#key-documents/legal-framework">Legal framework</a></li>
                <li><a href="#key-documents/project-document">Project Document</a></li>
              </ul>
            </li>
          </ul>
        </li>
        <li><a href="#./news-events">News</a></li>
        <li><a href="#working-areas">Working Areas</a></li>
        <li class="link"><a href="#"> Performance</a>
          <ul class="sub-menu">
            <li><a href="#./success-story">Success Story</a></li>
            <li><a href="#case-statistics">Case Statistics</a></li>
            <li><a href="#voices-of-the-field">Voices from the Field</a></li>
          </ul>
  </ul>
</div>

CSS

代码语言:javascript
复制
.desktop-nav,
.desktop-nav ul{
  width:100%;
  display:inline;
}

.desktop-nav ul li{
  float:left;
  min-width:200px; /*Can be anything change your CSS to make how you want, demo purposes */
}

@media only screen and (max-width: 600px) {

.desktop-nav,
.desktop-nav ul{
  display:none; <!-- Hide on screens smaller than 600px -->
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54372710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档