slidetoggle垂直菜单:儿童不工作

时间:2013-07-04 09:06:10

标签: javascript jquery

This我是垂直菜单。

jQuery -

 $(function(){
    $('.menu-header ul li a',this).click(function(){
      $('li').parent().children('li').children('a').siblings('p',this).slideToggle(100);
    });
});

当我尝试切换子元素<p>时,它会打开文档中的所有<p>子元素。我想只打开其父母的孩子。

3 个答案:

答案 0 :(得分:1)

如果您需要切换同级<p>元素,请使用以下内容:

$(".menu-header ul li a").click(function(e) {
    $(this).siblings("p").slideToggle(100);
    // or  .next("p"). ...

    e.preventDefault(); // to prevent default anchor functionality
});

DEMO: http://jsfiddle.net/XZTPZ/2/

答案 1 :(得分:1)

如果您只想打开a点击的父级的子级,则可以使用next。试试:

$('.menu-header ul li a',this).click(function(){      
     $(this).next("p").slideToggle(100);
});

答案 2 :(得分:0)

尝试下面的jquery代码

         $(function(){
                $('.menu-header ul li a').click(function(){
                     $(this).siblings().slideToggle(100);
               });  
              });