2016-01-02 60 views
0

我建立含有隐藏描述肘节()范围

单节点是这样

<div class="node inactive-node root"> 
    <a href="#">Example Skill</a> 
    <div class="info"> 
    <p class="cost">30</p> 
    <div class="dropdown"> 
     <a href="#" class="dropdown-toggle"><b class="caret"></b></a> 
      <div class="dropdown-menu"> 
       <a href="#">Example description</a> 
      </div> 
    </div> 
    </div> 
</div> 

以下脚本由节点构成的skilltree使obviusly显示所有的下拉 - 菜单页面

var main = function() {  
    $('.dropdown-toggle').click(function() { 
     $('.dropdown-menu').toggle(); 
    }); 
}; 

但修复我试图

var main = function() {  
    $('.dropdown-toggle').click(function() { 
     $(this).children('.dropdown-menu').toggle(); 
    }); 
}; 

是无效的,我不知道为什么。我尝试选择单击下拉菜单下的单下拉菜单,但我不明白如何。

回答

6

这不是一个子元素。这是一个兄弟姐妹。尝试使用next()。

$(this).next().toggle(); 

或者

$(this).parent().find('.dropdown-menu').toggle(); 
+0

是的,谢谢。 我获得了愚蠢的观点。 –

1
$('+.dropdown-menu',this).toggle(); 

或者

$('+.dropdown-menu',this).slideToggle();