仅选择父级

时间:2012-09-05 14:36:38

标签: javascript jquery

我正在尝试在单击div本身时切换父div。但我想防止子div或元素触发该函数。我怎样才能做到这一点?

//javascript (jquery enabled)
function toggle(parent_id) {
  $('.'+parent_id).toggle();
}
<!-- html -->
<div class="parent parent1" onclick="toggle('parent1')">
  <div class="child1"></div>
  <div class="child2"></div>
</div>

<div class="parent parent2" onclick="toggle('parent2')">
  <div class="child1"></div>
  <div class="child2"></div>
</div>

谢谢!

更新:我正在尝试切换特定的div,因此使用函数来传递特定的父ID。

即。如果我点击parent1,则parent1切换; 如果我点击parent2,则parent2切换

2 个答案:

答案 0 :(得分:4)

以下应该做的工作:

$(".parent").click(function(e) {
    if (e.target == this) {
        $(this).toggle();
    }
});

DEMO: http://jsfiddle.net/Md4U5/

答案 1 :(得分:0)

这很简单,只需扩展@ VisioN的答案,确保所有div的{​​{1}}类都有:

parent