有关JS中Event对象的几点总结
作者:yemoo 来源:yemoo博客 发布时间:2009-03-06 12:36:00
JavaScript/Dom中有很多很零碎的东西,让人总是感觉理解的有些“朦胧”,因此,有时候还是应该总结一下,对于Event对象,前两天看了quirksmode上PPK的一些关于事件的文章后,感觉很多东西瞬间都明白了,简单总结一下:
对一个存在默认事件的dom元素绑定一个相同的事件后(如a的href默认行为click转向),通过return false可以取消默认事件。尽管现在的浏览器支持preventDefault/returnValue等方式来取消,但return false是最简单且兼容各种浏览器的。
对于在a元素上绑定了的mouseover事件中尝试修改window.status时,需要返回true以取消默认的事件(在状态栏显示连接地址),这是一个特例。
通过return false并不能取消所有的事件,如unload。因为这类事件如果可以被取消则可能为用户带来很不好的体验。
内联事件绑定(<a onclick="">link</a>)和通过事件属性绑定(a.onclick=function(){})是所有浏览器均支持的。
在html中,因为标记不区分大小写,因此内联事件名也不区分大小写,你可以写成onclick或者OnClick等形式,但在XHTML中,必须是小些形式。此外,其它形式的事件绑定中事件名也必须为小写。
IE中,触发一个事件的方法为element.fireEvent('onclick');
w3c建议的事件触发顺序为先捕获后冒泡,这在非IE浏览器中可以根据addEventListeners的第三个参数来定义一个事件是在捕获期或者冒泡期触发,但在IE中只支持冒泡的顺序。
在IE中,通过attachEvent绑定的事件,其回调函数中的this指向的是window对象而不是绑定的dom对象。而在w3c兼容的浏览器中通过addEventLisnters绑定的事件回调函数中的this都是指向所绑定事件的dom对象。


猜你喜欢
- 本文是将yolo3目标检测框架训练出来的ckpt文件固化成pb文件,主要利用了GitHub上的该项目。为什么要最终生成pb文件呢?简单来说就
- <body oncontextmenu = "return false"> <body onconte
- 前言Python 字典 update()方法用于更新字典中的键/值对,可以修改存在的键对应的值,也可以添加新的键/值对到字典中。语法格式d.
- python对XML文件的操作1、xml 创建import xml.etree.ElementTree as ETnew_xml=ET.El
- 这篇文章主要介绍了如何在mac环境中用python处理protobuf,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学
- 海量数据库的查询优化及分页算法方案 原出处不详 摘自:www.21php.com 随着“ * ”建设的逐步深入和 * 信息化的高
- 改版背景创建专业的电子商务垂直搜索,以及把原有的信息聚合平台转型为在线采购批发交易平台。根据行业特点及交易需要,对原有的零批(小额批发)搜索
- 本文实例为大家分享了python使用tkinter实现简单计算器的具体代码,供大家参考,具体内容如下class Counter: #引入t
- 前言mysql模块(项目地址为https://github.com/mysqljs/mysql)是一个开源的、JavaScript编写的My
- 利用tcpdump对mysql进行抓包操作如下所示:命令如下:tcpdump -s 0 -l -w - dst 192.168.244.10
- 一个动态数组 a,如果你已经使用redim 语句给它设定了大小,那么在此之后使用 ubound(a) 就可以得到它的上边界。如果你没有使用
- 什么是 Socket?Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网
- 本文实例讲述了python使用arp欺骗伪造网关的方法。分享给大家供大家参考。具体实现方法如下:#coding:utf-8''
- 说明:本次代码是在Linux下执行的,windows也可以用,把添加用户密码的命令改成windows的就ok了用Python新建用户并产生随
- 最近要搭建一个阿里云的LMAP环境,选了CentOS7来做搭建。1.ApacheCentos7默认已经安装httpd服务,只是没有启动。如果
- usageerror: line magic function "%%time" not found在使用IPython
- 写文的原因学习 Python 的过程中,经常会使用 pip 命令去安装第三方模块,但细细琢磨下来,我真的掌握这款工具了吗?本文为你全面揭示一
- 方法一:torch.nn.DataParallel1. 原理如下图所示:小朋友一个人做4份作业,假设1份需要60min,共需要240min。
- 查询语句的优化是SQL效率优化的一个方式,可以通过优化sql语句来尽量使用已有的索引,避免全表扫描,从而提高查询效率。最近在对项目中的一些s
- 本文在前面文章基础上介绍tkinter添加图片和文本,在这之前,我们需要安装一个图片库,叫Pillow,这个需要下载exe文件,根据下面图片