-1

HTML

<div id="header_area">
    <div id="favuorites_header_wrapper" class="header_item">
        <div id="favuorites_header_font" class="noSelect">Open Menue</div>
        <div id="favuorites_header_icon" class="noSelect"></div>
    </div>
</div>

在上面的代码中,favuorites_header_wrapper 是 header_area 的孩子。favuorites_header_font、favuorites_header_icon 是 favuorites_header_wrapper 的子代。

现在,使用 jQuery,我想提醒根父级(即 header_area)无论您是单击 header_area 的子级还是子级。谢谢你的努力。

编辑:每当您单击其中的元素时,我都想获取容器 div 的 ID(即 header_area)。

我在用着

alert((e.target || e.srcElement).parentNode.id);

但它返回的是各自的父级而不是 Container Div ID。

4

5 回答 5

1

使用.closest()

$('#header_area div').click(function() {
    var parent_header_area = $(this).closest('#header_area');
});

或使用.parents()

$('#header_area div').click(function() {
    var parent_header_area = $(this).parents('#header_area');
});
于 2013-10-15T10:13:34.713 回答
1

我不确定“警告 header_area”是什么意思,但您可以使用以下命令选择它closest()

$('#header_area div').click(function() {
    var $header_area = $(this).closest('#header_area');
    // do something eg. alert the id...
    alert($header_area.prop('id'));
});
于 2013-10-15T10:13:08.227 回答
1

您可以使用:

$("#header_area").find();

这将返回所有子项和子项。然后,您可以将点击处理程序添加到找到的元素。解释可以在这里找到

于 2013-10-15T10:15:26.160 回答
0
$('.header_area div').click(function() {
    alert($(this).parents('.header_area'));
});
于 2013-10-15T10:16:10.437 回答
0

试试这个方法:

$('[id^="favuorites_header"]').click(function(e){
   e.stopPropagation();
   var parent = $(this).closest('[id^="header_"]').attr('id');
   alert(parent);
});

小提琴

于 2013-10-15T10:16:18.660 回答