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上的某个事件时,就会产生一个事件对象. ...
随机推荐
- 使用HttpClient 传送form 表单的请求
在项目中用到了,需要使用HttpClient 进行模拟表单传送form 表单的需求,在平常的项目中,大概都是传送json串的样式需求,但是如何才能给对应的服务器传送一个form 表单呢? 这就需要了N ...
- spring BeanUtils 工具实现对象之间的copy
一般我们会开发中会遇到返回用户信息的时候,不需要返回密码或者其他参数,这时候我们需要重新定义一个VO类去除不需要的参数,将原对象copy到VO类中 使用spring的BeanUtils可以实现对象的c ...
- go语言使用go-sciter创建桌面应用(六) Element元素操作和Event事件响应
详细的文档请看下面两个链接: https://sciter.com/docs/content/sciter/Element.htm https://sciter.com/docs/content/sc ...
- centos7下apache2.4反向代理
apache安装目录在/data/apache24,这里就不介绍apache的安装了. 一.反向代理配置 在/data/apache24/conf/extra下创建htttpd-proxy.conf文 ...
- jquery滚动事件
滚动到一定高度: $(window).scroll(function(){ var scrollTop = $(document).scrollTop(); && scrollTop ...
- webstorm安装配置
1.webstorm是一款优秀的前端设计工具,在官网下载webstorm.exe文件 官网地址:http://www.jetbrains.com/webstorm/ 2.一直next执行下一步进行安装 ...
- socket网络编程扫盲篇
socket 是“套接字”的意思,是计算机之间进行通信的一种约定,也可以认为是一种技术.通过 socket 这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据. socket 的 ...
- hdu 4004 (二分加贪心) 青蛙过河
题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=4004 题目意思是青蛙要过河,现在给你河的宽度,河中石头的个数(青蛙要从石头上跳过河,这些石头都是在垂 ...
- MFC窗口位置和大小的获取
最近在做一个项目,需要控件随对话框大小的变化而变化,因此需要准确获取对话框窗口.控件的大小和位置. 经过好一番查寻.测试,终于看到了希望.下面是一些获取窗口位置和大小的函数,示例如下: 1.获取屏幕分 ...
- POJ 2449Remmarguts' Date 第K短路
Remmarguts' Date Time Limit: 4000MS Memory Limit: 65536K Total Submissions: 29625 Accepted: 8034 ...