日期:2014-05-16  浏览次数:20477 次

三目的疑问
JScript code

var eventUtil={
                    
  //获取事件对象
  getEvent:function(event)
  {
         return event?window.event:event;
  }

}

var oDiv=document.getElementById('div1');
oDiv.onclick=function(event)
{    
    event=eventUtil.getEvent(event);
    alert(event.type); //IE和火狐都报错
}



JScript code

var eventUtil={
                    
  //获取事件对象
  getEvent:function(event)
  {
         return event?event:window.event; //这里只不过换了一下位置而已,就可以正常输出了,为什么?
  }

}

var oDiv=document.getElementById('div1');
oDiv.onclick=function(event)
{    
    event=eventUtil.getEvent(event);
    alert(event.type); //IE和火狐可以正常输出
}



我的理解是条件成立输出第一个,
不成立输出第二个,
哪有先写什么,后写什么的规定?

------解决方案--------------------
神马 哪有先写什么,后写什么的规定?

return event?event:window.event; 

如果成立说明什么? 说明event不是null,所以可以返回event
换位置成什么了? 如果event不是是null,返回window.event,哪里有window.event啊,这是因为浏览器兼容性才这么写的
------解决方案--------------------
event 或者window.event
火狐和IE的window.event对象详解