事件对象里的target和currentTarget的区别

【微信小程序入门到精通】— 事件绑定的详细解读_微信小程序绑定点击事件(3) 其基本过程就是在 .wxml 里面设置事件,然后在 .js 里面构建处理函数。 阅读详情

其实真正搞懂这两者之间的关系,只需要用代码做下实验就好了,其实很简单。请一定耐心看下去,您会彻底搞懂这两者的关系。

总结:e.curretnTarge是指注册了事件监听器的对象,也就是其事件处理程序当前正在处理事件的那个对象。e.target是指实际触发这个事件的源对象。

HTML:

    <div class="parent">
        <div class="child">
            <div class="grandchild"></div>
        </div>
    </div>

CSS:

        .parent{
            width: 300px;
            height: 300px;
            background-color: #bfa;
        }
        .child{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        .grandchild{
            width: 100px;
            height: 100px;
            background-color: blue;
        }

Javascript:

    const parent=document.getElementsByClassName("parent")[0]
    const child=document.getElementsByClassName("child")[0]
    const grandchild=document.getElementsByClassName("grandchild")[0]
    grandchild.onclick=function(event){
        console.log(event.target )
        console.log(event.currentTarget )
    }
    child.onclick=function(event){
        console.log(event.target )
        console.log(event.currentTarget )
    }
    parent.onclick=function(event){
        console.log(event.target )
        console.log(event.currentTarget )
    }

点击parent的输出:

 

当捕获阶段捕获到实际触发这个事件的原对象时,事件处理程序正在处理parent这个对象,故currentTarget是parent这个对象。

而实际触发这个事件也是parent对象。故target也是这个parent对象。

点击child的输出 :

当捕获阶段捕获到实际触发这个事件的原对象时,事件处理程序正在处理child这个对象,故currentTarget是child这个对象。

而实际触发这个事件也是child对象。故target也是这个child对象。

随后事件开始冒泡到父元素parent身上,事件处理程序正在处理parent这个对象,故currentTarget是parent这个对象。

而实际触发这个事件是child对象,不是parent对象,parent对象的事件是child元素冒泡得来的。故target是这个child对象,不是parent对象。

点击grandchild的输出:

 

当捕获阶段捕获到实际触发这个事件的原对象时,事件处理程序正在处理grandchild这个对象,故currentTarget是grandchild这个对象。

而实际触发这个事件也是grandchild对象。故target也是这个grandchild对象。

随后事件开始冒泡到父元素 child身上,事件处理程序正在处理child这个对象,故currentTarget是child这个对象。

而实际触发这个事件是grandchild对象,不是child对象,child对象的事件是grandchild元素冒泡得来的。故target是这个grandchild对象,不是child对象。

随后事件又开始冒泡到child的父元素 parent身上,事件处理程序正在处理parent这个对象,故currentTarget是parent这个对象。

而实际触发这个事件是grandchild对象,不是parent对象,也不是child对象,child对象的事件是grandchild元素冒泡得来的,而parent对象的事件是从child元素冒泡得来的,相当于是从grandchild冒泡得来的。故此时target是这个grandchild对象,不是child对象,更不是parent对象。

 

小程序中e.target与e.currentTarget区别详解 在小程序中,e.target与e.currentTarget是非常重要的,尤其是涉及到页面传值时!本节只说两者的区别,关于传值下一节再详细讲解>https://blog.youkuaiyun.com/Syleapn/article/details/81290133#comments~ 下面开始正文啦!! 先来大概梳理下逻辑,以便引申与更一步了解target与curentTarget。 ... 阅读详情

相关推荐

小程序 target 与 currentTarget(详细)

由于官方解释太过精炼,下面仔细讲讲其中的含义,先看一段代码:

https://shixuebin.gitee.io/hexo-blog/ 1254

target和currentTarget的区别

event.target 和 event.currentTarget 都是对一个触发事件的对象的引用. 不同之处在于: event.target 对触发事件的对象的引用(即它标识事件发生的元素) event.currentTarget 当事件遍历DOM时,标识事件的当前目标。它总是引用事件处理程序附加到的元素 target在事件流的目标阶段;currentTarget在事件流的捕获,目标及冒泡阶段...

开发路上的AZhe 9612

PCB压合原理与工艺全流程深度解析

PCB压合是多层印制电路板制造中的核心工序,其本质并非简单物理叠加,而是高分子树脂流动、玻璃布应力释放、铜箔热膨胀及界面能调控的协同过程。理解压合原理,需掌握温度-压力-时间三维曲线动态关系;优化工艺流程,须兼顾叠板精度、热压参数匹配与冷却策略;关键影响因素如半固化片(PP)选型、铜箔表面处理、设备温场均匀性、结构对称性、环境湿度及操作手法,共同决定层间结合力、翘曲度与孔壁质量。本文围绕PCB压合原理、工艺流程、关键影响因素三大维度展开,融合IPC标准、实测数据与产线案例,为工艺工程师、NPI人员及设备维护

weixin_29191081的博客 251

currentTarget和target的区别

currentTarget VS target target在事件流的目标阶段; currentTarget在事件流的捕获,目标及冒泡阶段。只有当事件流处在目标阶段的时候,两个的指向才是一样的, 而当处于捕获和冒泡阶段的时候, target指向被单击的对象 currentTarget指向当前事件活动的对象(一般为父级)。 冒泡和捕获 当点击页面的一个元素的时候,事件会从这个元素的祖先元素逐层传递下来,这个过程成为事件捕获;当事件传递到这个元素之后,又会把事件逐成传递回去,直到根元素为止,这个阶段是事件的冒泡

空寻的博客 2615

k最近邻算法——电影分类及案例详解

如图3-7所示,若将国际象棋棋盘放在二维直角坐标系中,格子的边长定义为1,坐标的x轴及y轴和棋盘方格平行,原点恰落在某一格的中心点,则王从一个位置走到其他位置需要的步数恰为二个位置的切比雪夫距离,因此切比雪夫距离也称为棋盘距离。关于这里的距离度量,这个电影分类的例子有2个特征,也就是2维的,可以使用我们高中学过的两点距离公式(两点距离公式其实就是欧氏距离在二维空间上的公式,也就是欧氏距离n的值为2的情况,欧氏距离也称为欧几里德距离)来计算距离,如图3-3所示。对数据进行归一化,避免量纲对计算距离的影响。

ZhShy 4552

Gemini 3.1 Flash本地部署实操:Ollama+Open WebUI零门槛运行指南

大型语言模型(LLM)本地运行是指将模型权重下载至本地设备,通过推理引擎完成离线推理的过程;其核心原理依赖量化压缩(如GGUF格式)与轻量级运行时(如Ollama)实现CPU/GPU高效加载;技术价值在于低延迟响应、数据隐私可控及免网络依赖;典型应用场景包括办公提效(邮件/周报生成)、学生学习辅助、产品原型验证等边缘AI任务;本文聚焦Gemini 3.1 Flash这一面向消费级硬件优化的轻量模型变体,结合Ollama模型管理与Open WebUI图形界面,提供从环境准备、模型拉取到流式对话的完整新手实操路

weixin_32238157的博客 488

target和currentTarget

target:触发事件的元素 currentTarget:事件绑定的元素 - 当事件不支持冒泡的时候,两者指的是同一个元素。 - 当事件支持冒泡时:比如父元素和子元素都绑定click事件,当点击子元素时,父元素的事件也会触发,此时父元素事件的currentTarget指向父元素,target指向子元素。

lseap的博客 1267

使用 Simulink + Simscape Electrical 实现一个变压器耦合式单相全波整流器的仿真模型

本文介绍了基于Simulink的变压器耦合式单相全波整流器建模与仿真方法。详细说明了从项目创建、模块添加、电路搭建到参数配置的完整建模过程,重点分析了整流器的效率与损耗特性,包括变压器损耗和二极管导通损耗。通过仿真展示了输入输出波形特征,并提出了选用高效元件、优化变压器设计等改进建议。该案例为电力电子系统建模提供了实用参考,有助于深入理解整流电路工作原理和性能优化方法。

amy_mhd的博客 185

小程序学习篇:target和currentTarget区别

微信小程序 target和currentTarget区别

gede_s的博客 784

2026华数杯 国际大学生数学建模竞赛 A题 如何防守直接任意球? 解题思路+模型分析+代码

2026华数杯 国际大学生数学建模竞赛 A题 如何防守直接任意球? 解题思路+模型分析+代码。基于视频数据重构进球轨迹,建立空间坐标系并进行曲线拟合,推算初始速度。建立"香蕉球"、"电梯球"、"落叶球"三种典型直接任意球轨迹的动力学模型,分析C罗进球的类型。针对C罗这类强力球员的直接任意球,提出人墙排布策略和守门员防守策略。

YOLO 663

把 ABAP SQL 窗口函数讲透:从 OVER 到 LEAD、RANK 与累计分析

ABAP SQL窗口函数在不丢失明细记录的前提下,为每行数据提供组内统计和排名功能。它通过OVER子句定义计算窗口,支持三类函数:聚合型(AVG/SUM等)、排名型(ROW_NUMBER/RANK等)和取值型(LEAD/LAG)。相比GROUP BY会合并多行数据,窗口函数保留原始记录同时附加计算结果,特别适合需要保留明细又要展示统计信息的业务场景,如销售排名、客户分层分析等。语法核心是OVER子句,通过PARTITION BY分组,ORDER BY排序,可灵活定义计算范围。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1272

获取当前vue对象_vue.js之获取当前点击对象(其实是套着vue的原生javascript吧,笑)...

熟悉jquery的小伙伴应该都知道jquery获取当前点击对象是有多么的粗暴,直接$(dom)获取当前点击的dom元素,根据这个,几乎可以获取这个dom元素的所有属性。不过,当我们使用vue的时候呢?也许刚开始会有一点迷茫。唉?对啊,我用vue该怎么做到(屠龙宝刀)点击就送...哦不,点击就能获取到我点击的是哪一个元素对象呢?其实很简单,vue.js,它不照样是javascript么,我们也是可以...

weixin_36380427的博客 381

【局部规划模块曲线算法】曲线平滑介绍

本文先对轨迹平滑问题做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容(1)适合给移动机器人运动的路径【满足运动学,高阶平滑】(2)高阶的运动学不能够突变的【至少三阶的加速度不能突变,最好四阶的jerk和五阶的snap也不能突变】(3)在转弯的地方不会停下来(4)加减速均衡,节省能量(5)节省时间的。

qq_35635374的博客 5714

click时获取与操作父、子、兄弟元素

点击事件的绑定方法

sun_qqq的博客 975

RK3588 Weston

下面是使用 weston -B=vnc-backend.so --width=1280 --height=720 ,使用vnc的客户端来远程访问weston桌面。Wayland是一套display server(Wayland compositor)与client间的。,而Weston是Wayland compositor的参考实现。7:在基于wayland 运行Qt 程序。根据不同版本,支持的后端也不相同。2:当前weston支持的后端。4:weston的配置文件。3:weston中的录屏。

OpenWrt/WLAN/驱动/Android/嵌入式开发总结 1027

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

javascript事件处理二 事件对象event详解及target和currentTarget区别

在处理事件的时候,所有和事件相关的东西都封装到event这个对象里面。所以这个对象非常的重要。这个对象有非常多的内容,我们讨论几个计较常见和以及比较难区别的target和currentTarget。

ScottePerk的博客 2064

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

微信小程序:事件对象中属性区分(target和currentTarget等)

1.多个单词由连字符。

weixin_70354927的博客 2048

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

js事件对象获取中target和currentTarget的区别

target和currentTarget获取的都是对象 target获取是触发事件的源对象 currentTarget获取的事件绑定的对象 <body> <input type = "button" value="点我" /> <script> var inp_01 = document.getElementsByTagName("input")[0]; doc...

zhoulib__的博客 2263

target与currentTarget的区别

这两天去面试的两个小伙伴都遇到了一个问题,面试官问到你用jQuery的时候有没有用过target和currentTarget?他们的区别是什么?他们都是一脸懵,平时练习也没有用过currentTarget啊?其实currentTarget这个属性很是鸡肋,其实我们平时也用不到,下面我们通过两个例子说明平时我们为什么用不到: 举个例子: <ul> <li>按钮1</li> <li>按钮2</li> <li&g

高先生的猫 1173

浅析js中e.target和e.currentTarget的区别

简单的说,e.curretnTarge是指注册了事件监听器的对象,e.target是指对象里的子对象,实际触发这个事件的对象。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=d...

w799766的博客 7974

事件对象中target对象和currentTarget对象的区别

1、target在事件流的目标阶段;currentTarget在事件流的捕获,目标及冒泡阶段。 2、event.currentTarget指向事件所绑定的元素,而event.target始终指向事件发生时的元素。 3、事件真正的发送者是evt.target(而且是可以变的,根据触发的不同displayObject),注册侦听器的是evt.currentTarget(不会变的)。 4、在 Go...

GoodIdea 900

在vue事件中传入$event,使用e.target和e.currentTarget有什么区别

在Vue中,事件处理是前端开发中非常重要的一部分。当我们在Vue中处理事件时,经常会用到事件对象event,而在事件对象中,有两个常用的属性:e.target和e.currentTarget

有我更精彩的博客 2618

Vue里`$event` 中的target和currentTarget的区别

$event 中的target和currentTarget的区别 $event是Vue自带的一个属性,可以看到很多属性。有点类似DOM中的event。 讲到这里我们就要提出一下下面两个重要的东西: event.target 触发事件的元素对象 event.currentTarget 绑定事件的元素对象 我们来上案例来讲解一下两者的区别: <body> <div class="app"> <button @click="add($event)">点击

qq_45188736的博客 1812

关于event.currentTarget和 event.target的实际区别

event.currentTarget和event.target的区别关于event里的target属性关于event里的currentTarget属性具体差别总结 相信很多初识事件监听的朋友们,还分不清楚,event.currentTarget和event.target的区别。看一下下边代码,你大概就能对这两个event属性有了大致的了解。 关于event里的target属性 首先我们要知道,event是什么(在JS中运行) let divEle = document.getElementsByTagN

WDNMDDDD的博客 2196

target 和currentTarget的区别

开始学习Flex,会在别人的代码中经常看到target和currentTarget这两个属性,一般是event.target、event.currentTarget,那他们两个有什么区别呢?简单说,target是事件的调用对象(event dispatcher),currentTarget是事件的处理对象(event processor)以一个实例来说吧Code hig

~。~||| 939
上一篇: js中对象的所有属性方法下(全网最全)
下一篇: 阻止事件默认行为和事件冒泡行为
HEGEHUB
博客等级 码龄8年 22粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值