火狐浏览器获取event

因为各种浏览器对js文件的解析不同。加上各种浏览器的内核不一样,以及内核版本号也不一样,所以获取event的方式也不一样。

使用原始的方式获取event是

这种:

document.body.onclick=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报错的问题了。


对于上面三种方式。在不同的情况下能够使用不同的方式。


posted @ 2017-08-01 16:01  brucemengbm  阅读(271)  评论(0编辑  收藏  举报