如何在Jquery中扩展特定的父级

时间:2009-12-02 11:43:20

标签: jquery parent-child

我有一个使用jquery制作的菜单。我希望当我点击特定父母的孩子在那个父母shud下扩展所有其他孩子在其他父亲shud得到隐藏。 我有父ID,所以我可以扩展一个特定的父母。

我的代码如下。

<script>
$(document).ready(function(){
  var msg1;
  var msg14;
var msg = false;
alert((document.getElementById(''P17_LOCATION_ID'')).value);
alert(msg14);
$(''.dropdown_menu'').click(function(event) {
msg = !msg;
if (msg)'
$(this).parent(''.parent_menu'').find(''.child_menu'').slideDown("slow");
  else 
$(''.child_menu'').hide();
return false;
 });
' });
</script>

这里 - $(this).parent(''.parent_menu'').find(''.child_menu'').slideDown("slow");负责滑下父母的子菜单,但目前所有子菜单都在扩展,我想停止,当我点击某个父母时,那个父母下面的孩子只会显示如此我如何将id传递给上面的这个陈述。 请提出一些解决方案

2 个答案:

答案 0 :(得分:2)

$(expr).parent(sel)返回与sel匹配的所有expr父项。你想要$(this).closest('。parent_menu')

答案 1 :(得分:0)

或者,您也可以只使用parent()返回的集合中的第一个元素:

$(this).parent('.parent_menu').eq(0).find('.child_menu').slideDown('slow');

但是,我同意closest()更优雅,它基本上做同样的事情。希望我的帖子能为你澄清一些事情。