火狐和IE的window.event的区别
火狐和IE的window.event的区别
火狐和IE的window.event的区别一、event对象
IE 中可以直接使用 window.event 对象,而 FF 中则不可以,解决方法之一如下:
var theEvent = window.event || arguments.callee.caller.arguments[0];
第二种是将 event 作为参数来传递:
function test(event) {
二、关于IE下的event.srcElement和火狐下的event.target
火狐下的e.target相当于ie下的event.srcElement,表示产生事件的源。
例子:
document.onclick = function(e){
var theEvent = window.event || e;
var srcElement = theEvent.srcElement;
if (!srcElement) {
srcElement = theEvent.target;
}
}
三、event.keyCode 和event.which
Mozilla下的event.which与IE下的event.keyCode相当。
代码:
//IE
<input type="text" nkeypress="doIt()">
<script language="javascript">
function doIt()
{
alert(event.keyCode);
}
</script>
//火狐
<input type="text" nkeypress="doIt(event)">
<script language="javascript">
function doIt(oEvent)
{
alert(oEvent.which)
}
</script>
四、event.x,event.y[IE]和event.pageX,event.pageY[Moz]
IE中取鼠标点击的绝对位置,使用event对象的event.x和event.y
Moz中取鼠标点击的绝对位置,使用event对象的event.pageX和event.pageY
所以为了兼容,需要自己做处理
五、event.offsetX,event.offsetY[IE]和event.pageX,event.pageY[Moz]
IE中取鼠标点击的相对位置,使用event对象的event.offsetX和event.offsetY
Moz中取鼠标点击的相对位置,使用event对象的event.layerX和event.layerY
所以为了兼容,需要自己做处理,
六、事件绑定
事件绑定上Mozilla用addEventListener,removeEventListener
对应IE的attachEvent,detatchEvent
热门推荐
- SQL语句分析工具Plan Explorer
- JavaScript的执行上下文
- python用pyqt5制作登录界面(python3+pyqt5+itchat微信定时发送消息的方法)
- C# using关键字的用法
- 云锁服务器怎么设置安全(SugarHosts云服务器如何开启访问端口和使用安全组)
- sqlserver基础数据类型(SQL Server中T-SQL 数据类型转换详解)
- nginx如何配置不显示nginx名字(Nginx安装完成没有生成sbin目录的解决方法)
- sqlserver日志被删除(sql server日志处理不当造成的隐患详解)
- lnmp常见问题(LAMP和LNMP,你更愿意选择谁,为什么?)
- pandas怎么写入csv文件(Pandas读写CSV文件的方法示例)