event事件对象

本文深入探讨了事件对象的概念及其在不同浏览器环境下的表现,包括IE与标准浏览器之间的差异。通过实例展示了如何在事件函数中正确使用事件对象,以及如何实现事件对象的兼容性处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script>
/*
event : 事件对象 , 当一个事件发生的时候,和当前这个对象发生的这个事件有关的一些详细的信息都会被临时保存到一个指定地方-event对象,供我们在需要的调用。

事件对象必须在一个事件调用的函数里面使用才有内容
事件函数:事件调用的函数,一个函数是不是事件函数,不在定义的决定,而是取决于这个调用的时候

兼容
ie/chrome : event是一个内置全局对象
标准下 : 事件对象是通过事件函数的第一个参数传入

如果一个函数是被事件调用的那么,这个函数定义的第一个参数就是事件对象
*/

alert( event );    //这里没有事件,event不在事件调用函数中使用
document.onclick = alert( event );//这里没有事件,event不在事件调用函数中使用
document.onclick = function() {
    alert(event);//这里有事件,event在事件调用函数中使用
};

function fn1(ev) {
    alert( event );//event在火狐没有定义
    alert( ev );//ev在火狐有定义,这时标准的写法,非标准ie中ev没有定义
    var ev = ev || event;//兼容标准个非标准事件写法
    alert(ev);
    for ( var attr in ev ) {
        console.log( attr + ' = ' + ev[attr] );
    }
    alert(ev.clientX);
}

fn1();    //事件没有发生,ev没有内容,不是事件调用的函数
document.onclick = fn1;    //是事件调用的函数,所以event有内容
</script>
</head>

<body>
</body>
</html>
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/5724998.html,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值