javascript - jQuery 向下滑动导航

标签 javascript jquery

我正在尝试构建一个简单的 jQuery 向下滑动导航,但在打开和关闭导航时遇到一些问题。

我的导航如下。

<ul id="nav">
<li>home</li>
<li class="parent">Clothing
    <ul>
        <li>child</li>
        <li>child</li>
        <li>child</li>
    </ul>
</li>
<li class="parent">shoes
    <ul>
        <li>child</li>
        <li>child</li>
        <li>child
                       <ul>
                          <li>child child</li>
                       </ul>
                    </li>
    </ul>
</li>

使用以下 jquery

var $j  =   jQuery.noConflict();

$j(document).ready(function() {


$j('#nav').children('.parent').click(function(e){
    e.preventDefault();
    $this = $j(this);
    $j('#nav').children('.parent').children('ul').stop().slideUp('slow', function(){
        $this.children('ul').stop().slideToggle('slow');        
    });
});

});

现在,当我单击子导航滑出时,再次单击不会执行任何操作,我需要它重新滑回。如果我单击另一个,我需要发生的事情是让扩展的导航(如果有)向上滑动,然后新的导航向下滑动,但它只是不想为我正常工作!它有问题,并且同时显示,有时不显示。

最佳答案

看这个...

var $j  =   jQuery.noConflict();

$j(document).ready(function() {
    $j('#nav > .parent').on('click', function(e){
        e.preventDefault();
        $j('#nav > .parent').children().stop().slideUp('slow');
        $j(this).children().stop().slideToggle('slow');
    });
});

查看此jSfiddle example

关于javascript - jQuery 向下滑动导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15027307/

相关文章:

javascript - 显示和隐藏 div 需要帮助

jquery - 如何初始化 jquery 关键帧

javascript - 连接对象不起作用或者我需要将值转换为正确的格式?

javascript - 你如何制作像 envato 这样的 float 侧边栏?

javascript - Tokbox Youtube 广播问题

jquery - 始终对 jQuery Ajax 的发布数据调用 JSON.stringify

javascript - 为动态生成的表设置 id 时出现问题

Javascript 模块 - 不能在模块外使用 import 语句

javascript - 按钮什么都不做?

javascript - Jquery 键/值 = 未定义