target和currentTarget的区别
event.target 和 event.currentTarget 都是对一个触发事件的对象的引用. 不同之处在于:event.target 对触发事件的对象的引用(即它标识事件发生的元素)event.currentTarget 当事件遍历DOM时,标识事件的当前目标。它总是引用事件处理程序附加到的元素target在事件流的目标阶段;currentTarget在事件流的捕获,目标及冒泡阶段...
·
target 和currentTarget 都是对一个触发事件的对象的引用. 不同之处在于:
1,target 是对触发事件的对象的引用 (简称就是事件源,就是那个真实DOM本身)
2,currentTarget 当事件遍历DOM时,标识事件的当前目标。它总是引用事件处理程序附加到的元素(事件绑定的元素,不一定是那个真实DOM,因为会冒泡)
3,target在事件流的目标阶段;(指元素本身)
4,currentTarget在事件流的捕获,目标及冒泡阶段。只有当事件流处在目标阶段的时候,两个的指向才是一样的 (这里就是说:只有是事件元素元素自身触发,指向才会是一样的)
# 因为会冒泡所以这个事件不一定是元素自身触发的
5,而当处于捕获和冒泡阶段的时候,target指向被单击的对象而currentTarget指向当前事件活动的对象(一般为父级)。(这里就是由于会冒泡就导致了指向会不一样)
注:参考原文:https://zhuanlan.zhihu.com/p/33906656
更多推荐
已为社区贡献1条内容
所有评论(0)