由于各种浏览器对js文件的解析不同,加上各种浏览器的内核不一样,以及内核版本也不一样,所以获取event的方式也不一样。
使用原始的方式获取event是
这样的:
document.body.οnclick=function(e){
e=e||window.event;
};
实际上大家会想为什么要重新赋值,这是因为event是瞬间有效,所以要进行保存。
这中方式可以实现,但是要保证传递的参数有e。
还有一种方式是这样的:
upAndDownListener : function(obj){
var ev = document.all ? window.event : event;
if (ev.keyCode == 13)
{
this.checkDouble(obj);
defaultTrendGroup.trendRedraw();
ev.returnValue = false;
}
}
这个时候可以实现获取event,但是在Firefox浏览器下一直报错,但是程序还能执行下去。
下面这种方式是可以解决第二种方式的问题:
upAndDownListener : function(obj){
var ev = document.all ? window.event : arguments[0] ? arguments[0]
: event;
if (ev.keyCode == 13)
{
this.checkDouble(obj);
defaultTrendGroup.trendRedraw();
ev.returnValue = false;
}
},
这种方式就可以解决在Firefox报错的问题了。
对于上面三种方式,在不同的情况下可以使用不同的方式。