事件触发函数中的this,target,currentTarget,srcElement
要解释其中的区别,首先要理解浏览器的事件机制,
现在主流的浏览器事件基本是先捕获再冒泡,IE浏览器只有冒泡阶段
事件是在冒泡阶段触发的
看看这个HTML 当我点击"我是父节点的时候". 事件是从 body->#parent->#child(捕获阶段) 然后(冒泡阶段) #child->#parent(触发事件)->body
好 事件机制了解了,看看下面的定义
this 指触发事件的节点,
e.target 指当前点击的元素,
e.currentTarget 指触发事件的节点(和this相同),
e.srcElement 兼容IE等效this,
注,当e.attacheEvent存在的时候,this指window对象.接下来看看这个事件绑定
这是一个事件委托,当点击我是子节点的时候,事件在#child节点触发,所以this和e.currentTarget都指的是#child,
对了 $(this) 可不等于$(e.currentTarget)被JQ包装后是二个不同的对象
事件触发函数中的this,target,currentTarget,srcElement的更多相关文章
- js进阶 12-14 jquery的事件触发函数是哪两个
js进阶 12-14 jquery的事件触发函数是哪两个 一.总结 一句话总结:trigger和triggerHandler 1.trigger传额外参数时候的注意事项是什么? 注意样例中是三个参数 ...
- tp5模型事件回调函数中不能使用$this
tp5模型事件回调函数中不能使用$this,使用会报错,涉及到数据库操作使用Db类,不能使用$this->save()之类的方式 如果回调函数中需要使用类内函数,需要将函数定义为static,通 ...
- JS事件-对象监视事件,事件触发函数
写在前面: 一句话作为本文的核心思想:对象监视事件,事件触发函数: (一)事件 1.事件分类 (1)鼠标事件 click() 鼠标单击 dblclick() ...
- jquery事件函数和原生事件绑定函数中return false的区别
一直听说jquery中事件函数返回false,相当于调用了event.preventDefault()和event.stopPropagation()两个方法,今天就想看看dom中0级.1级.2级事件 ...
- 在js自定义函数中使用$(event.target)代替$(this)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- JS中事件绑定函数,事件捕获,事件冒泡
1 事件绑定:事件与函数绑定以及怎么取消绑定 1.1 元素.onclick这种形式,如下: <div id="div1">aaa</div> <scr ...
- 跨浏览器的事件对象-------EventUtil 中的方法及用法
什么是EventUti----封装好的事件对象 在JavaScript中,DOM0级.DOM2级与旧版本IE(8-)为对象添加事件的方法不同 为了以跨浏览器的方式处理事件,需要编写一段“通用代码”,即 ...
- js事件对象--DOM中的事件对象/IE中的事件对象/跨浏览器的事件对象
事件对象 在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息.包括导致事件的元素.事件的类型,以及其他与特定事件相关的信息.例如,鼠标操作导致的事件对 ...
- js函数中的BOM和DOM
BOM 浏览器对象模型 screen对象 console.log(screen.width);// 屏幕宽度 console.log(screen.height);// 屏幕高度 console.l ...
随机推荐
- android学习小例子——验证码倒计时按钮
1.activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/andro ...
- 判断是否为ie(包含ie11)
if (!!window.ActiveXObject || "ActiveXObject" in window) { alert("IsIE"); }
- 【Tools】Chrome 控制台不完全指南
Chrome的开发者工具已经强大到没朋友的地步了,特别是其功能丰富界面友好的console,使用得当可以有如下功效: 更高「逼格」更快「开发调试」更强「进阶级的Frontender」 Bug无处遁形「 ...
- 安卓天天练练(十五)改造BasicSyncAdapter
谷歌的官方示例BasicSyncAdapter是Android Studio工程, 把它依样画葫芦到Eclipse上,然后改造成我需要的样式. 看官方示例源码的时候,看到EntryListActivi ...
- 【UVA11019】Matrix Matcher
Description Given an N × M matrix, your task is to find the number of occurences of an X × Y pattern ...
- 基于springMVC+springSecurity3.x+Mybaits3.x的权限系统,,开放源码,支持开源
原文地址:http://blog.csdn.net/mmm333zzz/article/details/16863543/
- 2.5.4 使用popupWindow
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout ...
- EntityFramework 异常 -- An entity object cannot be referenced by multiple instances of IEntityChangeTracker
问题 在调用 DbSet 的 Attach() 方法时(与将 Entity 设置为 EntityState.Unchanged 状态等价)报告以下错误: An entity ob ...
- 【HDOJ】1325 Is It A Tree?
并查集.需要考虑入度. #include <stdio.h> #include <string.h> #define MAXNUM 10005 int bin[MAXNUM]; ...
- BZOJ1612: [Usaco2008 Jan]Cow Contest奶牛的比赛
1612: [Usaco2008 Jan]Cow Contest奶牛的比赛 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 645 Solved: 433 ...