当前位置:首页 > JavaScript 笔记 > JS中event事件在兼容IE、火狐(Firefox)处理办法

JS中event事件在兼容IE、火狐(Firefox)处理办法

snuday16年前 (2011-05-25)JavaScript 笔记1230

前期用到了一个键盘左右键控制翻页的js,在ie里面直接就可以使用,可在火狐(firefox)里面就是不好使,想了半天怎么也不可能不好使呀,所以找了多方资料才知道,原来火狐对于js中event事件不解析,必须要转换到函数里面在调用出来,唉,本来挺简单的两句代码,现在要多加个函数,但是考虑到火狐,也只好忍了~~~

<script>
/*firefox*/
function __firefox(){
HTMLElement.prototype.__defineGetter__("runtimeStyle", __element_style);
window.constructor.prototype.__defineGetter__("event", __window_event);
Event.prototype.__defineGetter__("srcElement", __event_srcElement);
}
function __element_style(){
return this.style;
}
function __window_event(){
return __window_event_constructor();
}
function __event_srcElement(){
return this.target;
}
function __window_event_constructor(){
if(document.all){
return window.event;
}
var _caller = __window_event_constructor.caller;
while(_caller!=null){
var _argument = _caller.arguments[0];
if(_argument){
var _temp = _argument.constructor;
if(_temp.toString().indexOf("Event")!=-1){
return _argument;
}
}
_caller = _caller.caller;
}
return null;
}
if(window.addEventListener){
__firefox();
}
/*end firefox*/
</script>

以上为兼容火狐Firefox的js部分,下面是真正的翻页部分:

<SCRIPT>
<!--
document.onkeyup=function()
{
if(event.keyCode==37)window.location.href=document.getElementById("up").href;
if(event.keyCode==39)window.location.href=document.getElementById("down").href;
}

-->
</SCRIPT>


相关文章

非常简单的设为首页、加入收藏代码(兼容所有浏览器.....)

      今天在网站主页上要用到一个简单的代码,设为首页和加入收藏,本以为挺容易的,但不曾想找了好久也没有随心的代码,最终还是在自己的sunnday...

SupeSite模板代码详解

 SupeSite模版中的代码代表什么意思  supe_ads 广告表  adid smallint 广告id  subject varchar 广告标题  adtype enum 广告类型  dat...

zend optimizer之php加速器forIIS安装实例

zend optimizer之php加速器forIIS安装实例

windows2003服务器配置IIS6.0+PHP+Mysql+Zend环境组建[图文]Win2003IIS6.0+PHP+Mysql+Zend+环境组建 相关软件如下: 操作系统:Windows...

PHPCMS内容页顶过之后不显示数目,一直处理中的解决办法.....

最近刚刚升级使用最新版的PHPCMS,发现顶一下点击后一直处于处理中,还会出现一些很奇观的问题。而且点击查看也无法查看的问题,请按照以下方法解决找到原因是因为没办法取到栏目ID值。没取到值时表现如下:...

同页面多个JS冲突一般性解决方法+EcShop JS一般性总结(2)

2、养成良好的js代码编写习惯①. 总是使用 ‘var’在javascript中,变量不是全局范围的就是函数范围的,使用”var”关键词将是保持变量简洁...

同页面多个JS冲突一般性解决方法+EcShop JS一般性总结(1)

1、一般JS冲突解决办法a.最容易出现的就是JS 的命名冲突①、变量名冲突变量有全局变量和局部变量当全局变量变量和局部变量名称一致时,就会js冲突,由于变量传递数值或地址不同就会产生JavaScrip...