函数调用关于火狐(firefox)及ie下event获取的方法

本文个人在上海喝咖啡的时候突然想到的...近期就有想写几篇关于函数调用的博客,所以回家到之后就奋笔疾书的写出来发表了

    原创文章,经验之谈

    
经常有共事问我在火狐浏览器怎么取获event的法方,大多是想取获event.keyCode的功能

    两种法方
第一种法方:
function a(e){
e=e||window.event;
alert(e.keyCode);
}
ie浏览器如下调用
<body οnclick="a()">

    firefox火狐浏览器如下调用
<body οnclick="a(event)">

    这样以可就调用胜利
这类法方在firefox须要带个数参去过,不是太好,面下绍介第二种法方

    第二种法方:

    function a(){
e=arguments.callee.caller.arguments[0] || window.event;
alert(e.keyCode);
}

    ie和firefox下都如下调用
<body οnclick="a()">

    这里要解释一下arguments.callee.caller.arguments[0],

    每日一道理
喜马拉雅直冲霄汉,可面上有攀爬者的旗帜;撒哈拉沙漠一望无垠,可里面有跋涉者的脚印;阿尔卑斯山壁立千仞,可其中有探险者的身影;雅鲁藏布江湍急浩荡,可其中有勇敢者的故事。

    简略例子如下:

function a(){
b();
}

    function b(){
alert(b === arguments.callee)
alert(b.caller === a)
alert(arguments.callee.caller === a)

    }
a();

    面上的这个例子将出输3个true,标明当a()调用时,函数b与函数a的关系。
arguments.callee指的就是以后的函数体
arguments.callee.caller就是以后函数的级上函数

    所以当执行οnclick="a()"时arguments.callee就是a(),arguments.callee.caller就是function onclick
onclick的第一个能数就是event,也就是arguments.callee.caller.arguments[0]这个。

    我是江奇,此文已收录到我的个人站内http://www.imkoko.com/p/1

文章结束给大家分享下程序员的一些笑话语录: 问:你觉得让你女朋友(或者任何一个女的)从你和李彦宏之间选一个,你觉得她会选谁?  
  答:因为李艳红这种败类,所以我没女友!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值