<pre class="brush:js;">
domObj.onkeydown = function(e){
if(e){
e.……
}else{
event.……
}
}
上面例子:如果是火狐浏览器执行if里面的语句,即使用e这个参数,来引用“事件对象”。
如果是IE浏览器则执行else里面的语句,即使用event来引用“事件对象”。
这是为了兼容两个浏览器而使用的if判断方法,来使用事件对象。
上面例子:通过使用“或”这个逻辑运算符的特性,来自动判断应该使用那个做为事件对象的引用。
解释:e || event ;
如果是IE浏览器,那么e不能做为事件对象的引用,为假。event为真,那么event就会赋值给var oevent = event;
反之在火狐浏览器,那么event不能做为事件对象的引用,为假。e为真,那么e就会赋值给 var oevent = e;
所以无论在那个浏览器下面,oevent都可以正确的引用事件对象!这种写法,比前面的if(){}else{}感觉要优雅些!