Javascript 如何使用JQuery创建下拉菜单

Javascript 如何使用JQuery创建下拉菜单,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我找到了一把具有我想要的功能的小提琴。但是,我不知道如何调整代码(css)以使其下拉菜单链接 当我点击=时,我希望菜单下拉。原始代码通过单击父项并显示子链接来工作。我假设它可以为我的实例工作,但不确定如何工作 我想要完成的是单击=删除项目1和项目2。否则它们就会被隐藏起来 HTML <!-- original code --> <ul id="nav"> <li>Home</li> <li class="parent">

我找到了一把具有我想要的功能的小提琴。但是,我不知道如何调整代码(css)以使其下拉菜单链接

当我点击=时,我希望菜单下拉。原始代码通过单击父项并显示子链接来工作。我假设它可以为我的实例工作,但不确定如何工作

我想要完成的是单击=删除项目1和项目2。否则它们就会被隐藏起来

HTML

<!-- original code -->
<ul id="nav">
    <li>Home</li>
    <li class="parent">About
        <ul class="sub-nav">
            <li>Johnny</li>
            <li>Julie</li>
            <li>Jamie</li>
        </ul>
    </li>
    <li>Contact</li>
</ul>

<!-- my code -->
<div class="header-nav">
  <nav class="nav-menu">
    <ul>
        <li>Item 1</li>
        <li>Item 2</li> 
    </ul>
  </nav>

  <a href="#" id="menu-icon"></a>
</div>

JSFIDLE就在这里

您必须更新jQuery中的click事件,以便单击菜单图标。这项工作:

$(document).ready(function() {
    $('#menu-icon').click(function() {
        $('.nav-menu ul').toggleClass('visible');
    });
});
根据注释要求进行编辑要使菜单显示在菜单图标下方,您只需将菜单图标重新定位在
ul
上方,如下所示:

<div class="header-nav">
  <a href="#" id="menu-icon"></a>
  <nav class="nav-menu">
    <ul>
        <li>Item 1</li>
        <li>Item 2</li> 
    </ul>
  </nav>
</div>

  • 项目1
  • 第2项

并且

您必须更新jQuery中的click事件,以便单击菜单图标。这项工作:

$(document).ready(function() {
    $('#menu-icon').click(function() {
        $('.nav-menu ul').toggleClass('visible');
    });
});
根据注释要求进行编辑要使菜单显示在菜单图标下方,您只需将菜单图标重新定位在
ul
上方,如下所示:

<div class="header-nav">
  <a href="#" id="menu-icon"></a>
  <nav class="nav-menu">
    <ul>
        <li>Item 1</li>
        <li>Item 2</li> 
    </ul>
  </nav>
</div>

  • 项目1
  • 第2项

而且

需要像这样更新代码:

 $(document).ready(function() {
$('#menu-icon').click(function() { 
$('.nav-menu ul').toggleClass('visible');
});
});

对于文档:

需要像这样更新代码:

 $(document).ready(function() {
$('#menu-icon').click(function() { 
$('.nav-menu ul').toggleClass('visible');
});
});

对于文档:

稍微清理了代码。像这样


稍微整理一下代码。像这样


令人惊叹的。有没有一种方法可以让这些项目在下方而不是上方显示?请参阅我的编辑,并更新小提琴,使其像您想要的那样工作谢谢!它在JSFIDLE中工作,但在我的服务器上不工作。在
元素中,我有jquery.min.js和另一个名为menu.js的文件,其中包含js代码。应该放在正文中吗?不,对.js文件的引用应该放在
标记中。。似乎不明白为什么它不起作用。我用的是真棒。有没有一种方法可以让这些项目在下方而不是上方显示?请参阅我的编辑,并更新小提琴,使其像您想要的那样工作谢谢!它在JSFIDLE中工作,但在我的服务器上不工作。在
元素中,我有jquery.min.js和另一个名为menu.js的文件,其中包含js代码。应该放在正文中吗?不,对.js文件的引用应该放在
标记中。。似乎不明白为什么它不起作用。我正在用Wild很好地解释为什么投票被否决-可能是因为这里的人不宽容:/Wild很好地解释为什么投票被否决-可能是因为这里的人不宽容:/