如何隐藏相同的div,同时只显示一个?

时间:2012-10-29 14:33:37

标签: jquery

我选择了条件子选择,它将所选的子选择显示为div。 但是,每个div都有相同的类名,我无法改变。每个相同div中的div可以具有唯一ID。如何在隐藏所有其他div时显示所选内容?这种描述可能没有意义 - 请参阅jsFiddle here

<div class="container">
<div id="two" class="phone">Content one</div>
</div>

<div class="container">
<div id="one" class="phone">Content two</div>
</div>

我可以隐藏未选择的div的内容,但不能隐藏具有类名.container的外部div。我想要显示的div也有类名.container。

如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

基本D​​OM:DOM树中的每个元素都有一个父节点。如果您想(比方说)隐藏one节点的父节点,那么您只需执行

$('#one').parent().hide();

这适用于包含div.container节点的one。如果您有多个父节点层,则需要遍历,例如

<div class="container">
   <div>
      <div>
         <div id="one">...</div>
 etc...

然后$('#one').parent('.container')将搜索所有父节点以找到匹配的节点,并完成同样的事情。