$(this) vs e.target or event.target in jquery

$(this) vs e.target or event.target in jquery

本文关键字:target or event in jquery this vs      更新时间:2023-09-26

何时使用 $(this) 和 e.target?

我对 $(this) 没有混淆,但 e.target 对我来说令人困惑,因为它可以执行与 $(this) 相同的操作。(或者我错了?

$(document).on('click',"div", function(){
        $(this).css('color', 'red');
    }
});

$(document).on('click',"div", function(e){
        $(e.target).css('color', 'red');
    }
});

如果您单击事件绑定到的元素,它们将是相同的。但是,如果单击子项并冒泡,则this引用此处理程序绑定到的元素,e.target仍引用事件发起的元素。

e.target 属性可以是注册事件的元素,也可以是该元素的后代。您可以将其与 $(this) 进行比较,以确定事件委派是否由于事件冒泡而发生。