我是靠谱客的博主 懵懂夏天,最近开发中收集的这篇文章主要介绍如何让火狐浏览器兼容window.event,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 遇到一个问题,火狐不兼容window.event,之前代码解决是通过这种方式解决的。

 如下(无参数方式):

unction _test2()
{
    var evt = window.event || arguments.callee.caller.arguments[0]; // 获取event对象
    var src = evt.srcElement || evt.target; // 获取触发事件的源对象
    var iKeyCode = evt.keyCode || evt.which; //获取按钮代码
    alert(src.value); // 打印该对象的value属性
    if (window.navigator.userAgent.indexOf("IE")>=1){
       evt.keyCode =0;
              evt.returnValue=false;
           }else{
              evt.preventDefault();
           }
 
 
}

我猜可能之前这样是可以用的,但是现在的确是不行,在火狐浏览器中获取window.event是undefined导致evt=arguments.callee.caller.arguments[0]; 而 arguments.callee.caller为null,导致此句报错无法进行后续操作。

后来查阅资料使用参数方式
如下:
οnclick="Open(event)"
一般是
function Open(evt)
{
e = window.event || evt;//兼容所有浏览器
}

当我换成这样的方式,效果是可以的,火狐,IE,Chrmoe都可以获取到event事件。

转载于:https://www.cnblogs.com/Cathay/p/6802595.html

最后

以上就是懵懂夏天为你收集整理的如何让火狐浏览器兼容window.event的全部内容,希望文章能够帮你解决如何让火狐浏览器兼容window.event所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部