jquery on-method不包括孩子

时间:2015-05-10 10:45:51

标签: jquery

我希望从on-method中排除子元素。我现在的代码是这样的:

$(document).on('click', '.toBuyItem', function() {
    if($(this).has('.itemComment').length != 0){
        $(this).addClass("toggling");
        toggle(".toggling .itemComment");
        $(this).removeClass("toggling"); 
    }
}).on('click','.done',function(){
    $(this).parent().remove();
    $(this).parent().removeClass("toBuyItem");
    $(this).parent().addClass("boughtItem");
    $("#boughtItems").prepend($(this).parent());
});

" .done"是" .toBuyItem"的孩子。所以我需要从第一个开始排除它。我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以使用以下方法明确地排除它:

$(document).on('click', '.toBuyItem', function(e){
            if($(e.target).hasClass('done')) return;
            if($(this).has('.itemComment').length != 0){
                $(this).addClass("toggling");
                toggle(".toggling .itemComment");
                $(this).removeClass("toggling"); 
            }          
    })