window.event快达到全浏览器支持了,以后使用就方便了


Posted in Javascript onNovember 30, 2011

看下以下代码在各浏览器下的结果:

<body onclick="alert([window.event,event,this.event]);">test</body>

IE8: object,object,undefined
FF8.0: undefined,MouseEvent,undefined
Cr16: MouseEvent,MouseEvent,undefined
Opera: MouseEvent,MouseEvent,undefined
Safira: MouseEvent,MouseEvent,undefined

除FF8外,其它浏览器都已经支持window.event了

ff8似乎在调用事件时with了一个{event:new Event(...)};所以在onclick里也可以直接用“event”来获取事件句柄。

另:好奇同学在QWrap的Event里供了一个QW.EventH.getEvent的静态方法,用来在各种情况下获取当前的事件对象,代码如下:

/** 
* 获得event对象 
* @method getEvent 
* @param {event} event (Optional)event对象 默认为调用位置所在宿主的event 
* @param {element} element (Optional)任意element对象 element对象所在宿主的event 
* @return {event} event对象 
*/ 
getEvent: function(event, element) { 
if (event) { 
return event; 
} else if (element) { 
if (element.document) {return element.document.parentWindow.event; } 
if (element.parentWindow) {return element.parentWindow.event; } 
} if (window.event) { 
return window.event; 
} else { 
var f = arguments.callee; 
do { 
if (/Event/.test(f.arguments[0])) {return f.arguments[0]; } 
} while (f = f.caller); 
} 
},

所以,使用QW的页面,可以直接这样写:
<a href="#" onclick="EventH.preventDefault()">点我无效</div>

即:调用preventDefault时,不必传入event实例。
Javascript 相关文章推荐
Ext面向对象开发实践(续)
Nov 18 Javascript
Js从头学起(基本数据类型和引用类型的参数传递详细分析)
Feb 16 Javascript
parentElement,srcElement的使用小结
Jan 13 Javascript
js控制输入框获得和失去焦点时状态显示的方法
Jan 30 Javascript
轻松学习jQuery插件EasyUI EasyUI创建菜单与按钮
Nov 30 Javascript
JS表格组件神器bootstrap table详解(基础版)
Dec 08 Javascript
创建一个类Person的简单实例
May 17 Javascript
axios 处理 302 状态码的解决方法
Apr 10 Javascript
详解解决使用axios发送json后台接收不到的问题
Jun 27 Javascript
浅谈vue父子组件怎么传值
Jul 21 Javascript
JS实现的自定义map方法示例
May 17 Javascript
vue radio单选框,获取当前项(每一项)的value值操作
Sep 10 Javascript
图片在浏览器中底部对齐 解决方法之一
Nov 30 #Javascript
用Javascript评估用户输入密码的强度实现代码
Nov 30 #Javascript
用Javascript评估用户输入密码的强度(Knockout版)
Nov 30 #Javascript
Ubuntu 11.10 安装Node.js的方法
Nov 30 #Javascript
JavaScript中数组的排序、乱序和搜索实现代码
Nov 30 #Javascript
js常用代码段整理
Nov 30 #Javascript
firebug的一个有趣现象介绍
Nov 30 #Javascript
You might like
php access 数据连接与读取保存编辑数据的实现代码
2010/05/12 PHP
php实现俄罗斯乘法实例
2015/03/07 PHP
PHP下载生成的csv文件及问题总结
2015/08/06 PHP
iis6手工创建网站后无法运行php脚本的解决方法
2017/06/08 PHP
php获取微信共享收货地址的方法
2017/12/21 PHP
Javascript 面向对象 继承
2010/05/13 Javascript
jQuery中验证表单提交方式及序列化表单内容的实现
2014/01/06 Javascript
js中setTimeout()与clearTimeout()用法实例浅析
2015/05/12 Javascript
Javascript如何判断数据类型和数组类型
2016/06/22 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
JS实现放大、缩小及拖拽图片的方法【可兼容IE、火狐】
2016/08/23 Javascript
JavaScript 中 avalon绑定属性总结
2016/10/19 Javascript
把JavaScript代码改成ES6语法不完全指南(分享)
2017/09/10 Javascript
微信小程序仿微信运动步数排行(交互)
2018/07/13 Javascript
亲自动手实现vue日历控件
2019/06/26 Javascript
你准备好迎接vue3.0了吗
2020/04/28 Javascript
[57:53]Secret vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python守护进程用法实例分析
2015/06/04 Python
详解Django中的form库的使用
2015/07/18 Python
Python自动生产表情包
2017/03/17 Python
python决策树之CART分类回归树详解
2017/12/20 Python
python爬虫中get和post方法介绍以及cookie作用
2018/02/08 Python
python字典值排序并取出前n个key值的方法
2018/10/17 Python
django使用LDAP验证的方法示例
2018/12/10 Python
Python判断一个list中是否包含另一个list全部元素的方法分析
2018/12/24 Python
python tqdm 实现滚动条不上下滚动代码(保持一行内滚动)
2020/02/19 Python
详解Django配置JWT认证方式
2020/05/09 Python
C语言怎样定义和声明全局变量和函数最好
2013/11/26 面试题
大学生毕业自我鉴定范文
2013/09/19 职场文书
个人求职简历的自我评价
2013/10/19 职场文书
车辆转让协议书
2014/09/24 职场文书
聘任书范文大全
2015/09/21 职场文书
Unity连接MySQL并读取表格数据的实现代码
2021/06/20 MySQL
图文详解nginx日志切割的实现
2022/01/18 Servers
python实现学生信息管理系统(面向对象)
2022/06/05 Python
Vue2项目中对百度地图的封装使用详解
2022/06/16 Vue.js