单击其他元素时是否单击了它

时间:2012-12-27 11:44:45

标签: javascript jquery events

假设我divB内有divA。我在divA点击了一个点击事件 但是如何检查divB内的divA是否也被点击了?

jsFiddle - http://jsfiddle.net/zwxK6/

剧本 -

$('#divA').on('click', function() {
    //What to do here? how to check if divB inside divA is clicked also?
});​

3 个答案:

答案 0 :(得分:4)

使用事件对象获取事件源,将事件对象传递给您为点击绑定的功能,event.target将为您提供事件源。

<强> Live Demo

$('#divA').on('click', function(event) {
    alert(event.target.id);
    //Use event.target.id to check if divB inside divA is clicked also
});​

答案 1 :(得分:4)

试试这个:

$('#divA').on('click', function() {
    alert('divA is clicked');
});

$('#divB').on('click', function(e) {
    e.stopPropagation();
    alert('divB is clicked');
});

DEMO HERE

答案 2 :(得分:1)

这会点击divA,然后点击divB

您可以这样找到:http://jsfiddle.net/zwxK6/4/

function fireIt(id) {
    alert(id + " is clicked too.");
}
$(function() {
    $('#divA').on('click', function(e) {
       $(e.target.id).children('div').click(
          fireIt($(e.target).children('div').attr('id'))
       );
    });
});