DOM中的事件对象和IE事件对象
| DOM中的事件对象 | IE事件对象 | ||||||
| 属性/方法 | 类型 | 读/写 | 说明 | 属性/方法 | 类型 | 读/写 | 说明 |
| bubles | Boolean | 只读 | 表明事件是否冒泡 | cancleBubble | Boolean | 读/写 |
默认为false,但将其设置为true就可以取消事件冒泡 (与DOM中的stopPropagation()方法的作用相同) |
| cancelable | Boolean | 只读 | 表明是否可以取消事件的默认行为 | returnValue | Boolean | 读/写 |
默认为true,但将其设置为false就可以取消事件的默认行为 (与DOM的preventDefault()方法的作用相同) |
| currentTarget | Element | 只读 | 其事件处理程序当前正在处理事件的那个元素 | scrElement | Element | 只读 | 事件的目标(与DOM中的target属性相同) |
| defaultPrevented | Boolean | 只读 |
为true表示已经调用了preventDefault() (DOM3级事件新增)是否取消默认事件 |
type | String | 只读 | 被触发的事件类型 |
| detail | Integer | 只读 |
与事件相关的的细节信息 |
||||
| eventPhase | Integer | 只读 |
调用事件处理程序的阶段:1表示捕获阶段, 2表示‘处于目标’,3表示冒泡阶段 |
||||
| preventDefault() | Function | 只读 |
取消事件的默认行为,如果cancelable为true 则可以使用这个方法 |
||||
| stopImmediatePropagation() | Function | 只读 |
取消默认事件的进一步捕获或冒泡, 同时阻止任何事件处理程序被调用(DOM3级事件中新增) |
||||
| stopPropgation() | Function | 只读 |
取消事件进一步捕获或冒泡。如果bubbles为 true,则可以使用这个方法 |
||||
| target | Element | 只读 | 事件的目标 | ||||
| trusted | Boolean | 只读 |
为true表示是浏览器生成的 为false表示是由开发人员通过js创建的 |
||||
| type | String | 只读 |
被触发的事件类型 |
||||
| view | AbstractView | 只读 |
与事件关联的抽象视图 等同于发生事件的window对象 |
||||
兼容DOM的浏览器会将一个Event对象传入到事件处理程序中,无论事件处理程序使用什么方法(DOM0或DOM2),都会传入Event对象
IE中的事件对象
访问IE中的event对象和DOM不一样,取决于制定事件处理程序的方法,在试用Dom0级方法添加事件处理程序时,event对象作为window对象的一个属性存在
DOM0级方法
obj.onclick = function(){
alert(window.event.srcElement.parentNode);
window.event.returnValue = false;
return false;
}
如果是用attachEvent添加
obj.attachEvent('onclick',function(event){
alert(event.type);
});
oDiv.attachEvent('onclick',function(){
document.body.innerHTML += this; //attachEvent内部this指向window
});
因为在IE中事件处理程序的作用域是根据制定他的方式确定的,所以不能认为this会始终等于事件目标故而使用Event.srcElement 事件源元素
取消事件的默认行为
var link = document.getElementById('a1');
link.onclick = function(event){
alert(window.event.type);
window.event.returnValue = false;
}
取消事件冒泡
var link = document.getElementById('a1');
link.onclick = function(event){
alert(window.event.type);
window.event.cancelBubble = true;
}
DOM中的事件对象和IE事件对象的更多相关文章
- python 全栈开发,Day55(jQuery的位置信息,JS的事件流的概念(重点),事件对象,jQuery的事件绑定和解绑,事件委托(事件代理))
一.jQuery的位置信息 jQuery的位置信息跟JS的client系列.offset系列.scroll系列封装好的一些简便api. 一.宽度和高度 获取宽度 .width() 描述:为匹配的元素集 ...
- jQuery基础(4)- 位置信息、事件流、事件对象、事件代理、jquery事件
一.jQuery的位置信息 jQuery的位置信是JS的client系列.offset系列.scroll系列封装好的一些简便api. 1.宽度和高度 a.获取宽度和高度,例如: .width() // ...
- javascript的阻止默认事件和阻止冒泡事件
这两个方面的知识,在妙味课堂中有听过,再次复习一下: 原文来自:[http://www.cnblogs.com/Essence/p/4266618.html] 事件冒泡与默认行为 在说事件冒泡之前 ...
- DOM中的事件对象
三.事件对象事件对象event1.DOM中的事件对象(1).type:获取事件类型(2).target:事件目标(3).stopPropagation() 阻止事件冒泡(4).preventDefau ...
- js事件对象--DOM中的事件对象/IE中的事件对象/跨浏览器的事件对象
事件对象 在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息.包括导致事件的元素.事件的类型,以及其他与特定事件相关的信息.例如,鼠标操作导致的事件对 ...
- DOM中的事件对象(event)
在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件相关的信息. 包括导致事件的元素.事件的类型以及其他与特定事件相关的信息. 例如:鼠标操作导致的事件对象中,会包含鼠 ...
- JavaScript 中的window.event代表的是事件的状态,jquery事件对象属性,jquery中如何使用event.target
http://wenda.haosou.com/q/1373868839069215 http://kylines.iteye.com/blog/1660236 http://www.cnblogs. ...
- 理解DOM中的事件流
浏览器发展到第四代时(IE4和Netscape Communicator 4),浏览器团队遇到一个很有意思的问题:页面的哪一部分会拥有特定的事件?想象下在一张纸上有一组同心圆,如果你把手指放在圆心上, ...
- react事件中的事件对象和常见事件
不管是在原生的js还是vue中,所有的事件都有其事件对象,该事件对象event中包含着所有与事件相关的信息,在react中,所有的事件也有其事件对象,在触发DOM上的某个事件时,就会产生一个事件对象. ...
随机推荐
- 定时器修改button标题闪烁
在做一个项目时,用到UIButton来设置接收短信验证码的倒计时,但是用NSTimer来设置标题会出现连续闪烁的问题. 经过测试发现了一下内容,如果只是单独的设置button的titleLabel的内 ...
- static 构造函数的认识
最近,看到一道面试题,如下 class Class1 { ; static Class1() { count++; } public Class1() { count++; } } Class1 on ...
- 安装opencv2.4.9
首先如果你的运气足够好,你完全可以按照 : https://my.oschina.net/u/1757926/blog/293976 或者OpenCV中文论坛上的Linux下opencv的安装方法 但 ...
- C# 切换到二级域名,使用Cookie
之前的网站一直用的是一级域名,现因为其他原因,需要使用一个二级域名访问,原先的域名不用了. 使用二级域名后,发现Cookie一直取不到,分析代码发现,原来是需要在设置cookie的时候,把二级域名加上 ...
- Python.URLs
1. The Future of Asynchronous IO in Python https://medium.com/@paulcolomiets/the-future-of-asynchron ...
- 简单使用DESeq做差异分析
简单使用DESeq做差异分析 Posted: 五月 06, 2017 Under: Transcriptomics By Kai no Comments DESeq这个R包主要针对count d ...
- django admin管理后台中文添加问题
django版本号 1.7.8 #create database mydb character set utf8;#django-admin.py startproject mysite#设置sett ...
- db2创建数据库
1.在实例用户用户下执行 db2 create database <DBName> on /home/db2inst1/<DBName> using codeset UTF ...
- java itext 报错 com.itextpdf.text.DocumentException: Font 'STSong-Light' with 'UniGB-UCS2-H'
com.itextpdf.text.DocumentException: Font 'STSong-Light' with 'UniGB-UCS2-H' 解决方案 <dependency> ...
- WCF 与 Windows Store Client App
首先复习下WCF: WCF实际上是构建了一个框架,这个框架实现了在互联系统中各个Application之间如何通信.使得Developers和Architect在构建分布式系统中,无需在考虑如何去实现 ...