Javascript 查询-按href打开列表元素并显示所选div

Javascript 查询-按href打开列表元素并显示所选div,javascript,jquery,html,panel,slidetoggle,Javascript,Jquery,Html,Panel,Slidetoggle,此演示: 我想通过链接显示我的div,例如“#test” 现在我的代码有错误: 单击列表项后,第二次单击div和child ul后,将折叠 点击后,子ul上的链接被折叠和展开 如果href中的id不存在,则不隐藏活动div,例如“#test” 请帮助,查看演示和代码;) 试试看 $(function () { $('div').hide(); $('ul li ul').hide(); $('ul li').click(function () { $(

此演示:

我想通过链接显示我的div,例如“
#test

现在我的代码有错误:

  • 单击列表项后,第二次单击div和child ul后,将折叠
  • 点击后,子ul上的链接被折叠和展开
  • 如果href中的id不存在,则不隐藏活动div,例如“#test”
请帮助,查看演示和代码;)

试试看

$(function () {
    $('div').hide();
    $('ul li ul').hide();
    $('ul li').click(function () {
        $(this).siblings('li').children('ul').hide('slow');
        var ul = $(this).children('ul');
        if (!ul.filter(':visible').length > 0) {
            ul.show('slow');
            $($(this).find('a').attr('href')).show('slow').siblings('div').hide();
        }
    })
});

@user3501587很高兴能帮助。。!
$(function () {

    $('div').hide();
    $('ul li ul').hide();
    $('ul li:first-child ul').show();
    $('div:first').show();

    $('ul > li').click(function() {

        $(this).children('ul').slideToggle();
        $('ul > li').not(this).children('ul').slideUp();

        $('ul > li').removeClass('active');
        $(this).addClass('active');

    });

    $('ul li > a').click(function(e){

        var href = $(this).attr("href");
        $(href).slideToggle().siblings('div').hide();

    });

});
$(function () {
    $('div').hide();
    $('ul li ul').hide();
    $('ul li').click(function () {
        $(this).siblings('li').children('ul').hide('slow');
        var ul = $(this).children('ul');
        if (!ul.filter(':visible').length > 0) {
            ul.show('slow');
            $($(this).find('a').attr('href')).show('slow').siblings('div').hide();
        }
    })
});
$(function () {

    $('div').hide();
    $('ul li ul').hide();
    $('ul li:first-child ul').show();
    $('div:first').show();

    // $('ul > li').click(function() {
    //
    //    $(this).children('ul').slideToggle();
    //    $('ul > li').not(this).children('ul').slideUp();

    //     $('ul > li').removeClass('active');
    //     $(this).addClass('active');

    //  });

    $('ul li > a').click(function(e) {

        $('ul > li').removeClass('active');
                      $(this).closest('li').addClass('active').find('ul').slideToggle();
        var href = $(this).attr("href");
        $(href).slideToggle().siblings('div').hide();
        if($(href).length === 0) {
            $('div').hide();
        }        
    });

});