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上的某个事件时,就会产生一个事件对象. ...
随机推荐
- python之格式化输出
字符串格式化有两种方式,%和format 先介绍下%号的方法 #%s的语法结构,叫做占位符,就是先占一个位置,然后我们用真实的要显示的数据替换占位符即可#最简单的用法就是下面的方式,其实%s还有其他的 ...
- linux命令学习之:tar
tar命令可以为linux的文件和目录创建档案.利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件.tar最初被用来在磁带上创建档案,现在,用户可以在 ...
- 1-跑Faster R-CNN项目中的一些问题
原理介绍: https://blog.csdn.net/quincuntial/article/details/79132243 我用的环境: Python 3.5.2 cpu版的ten ...
- 统计sql
查询统计信息 select * from user_tab_statistics t where t.TABLE_NAME=upper('tablename'); 查询表基本信息 select * f ...
- redhat 5.6安装wireshark
mkdir -p /mnt/cdrom mount -t iso9660 /dev/cdrom /mnt/cdrom cd mnt/cdrom/Server rpm -ivh lm_sensors-- ...
- Jenkins发送邮件,邮件正文嵌套的html中文显示乱码
解决方案: 1.添加系统变量.变量名:JAVA_TOOL_OPTIONS变量值:-Dfile.encoding=UTF8 2.打开jenkins,系统管理--系统设置,在全局属性处勾选Environm ...
- Github上Markdown基本语法
基础写作和语法格式 本篇文章的内容来源于Github的基础写作帮助.如果在观看时有什么问题,可以直接查阅源文件.另外需要说明的是Git对Markdown的支持增加了一些扩展功能,因此在Git上可以渲染 ...
- PAT 1081 检查密码(15) (代码+思路)
1081 检查密码(15 分) 本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能.该网站要求用户设置的密码必须由不少于6个字符组成,并且只能有英文字母.数字和小数点 .,还必须既有字母也 ...
- Win10传递优化设置技巧
什么是“传递优化缓存” “传递优化”是微软为了加快Windows更新和Microsoft Store应用更新的下载速度,而在Windows10中引入的一种“自组织分布式本地化缓存”设计,可以在用户电脑 ...
- [Centos] ERROR: Could not find useradd in chroot, maybe the install failed?
[mockbuild at localhost ~]$ mock -r centos-5-x86_64-testdev.cfg initinitcleanprepThis may take a whi ...