`
zouzongfang
  • 浏览: 4954 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

event 兼容调用(IE,Firefox,Chrome)

阅读更多
这两天在接触 jQuery EasyUI(http://jquery-easyui.wikidot.com/ ),在调用window.event的时候发现了Firefox在调用event的时候有些兼容问题:

在Firefox页面调用后,其windows.event对象为undefined:


if (typeof (window.event) == 'undefined')
  alert('window.event is undefined.');
else
  alert('window.event is defined.');




以上代码在Firefox中执行,结果为:"window.event is undefined."。IE 和 Chrome中执行结果:“window.event is defined."。



在Firefox中需要调用event必须在调用方法中传递一个参数event,但是jQuery EasyUI中有些动作不能传递自定义参数,比如 tree 中的 onChick(node)中,只能传递node参数。为了解决这个问题,页面加载时需要执行以下代码,初始化一个event即可解决这个问题:

 
function loadEvent() {
if (!document.all) {
  window.constructor.prototype
    .__defineGetter__(
      "event",
      function() {
       var func = arguments.callee.caller;
       while (func != null) {
        var arg0 = func.arguments[0];
        if (arg0
          && (arg0.constructor == Event || arg0.constructor == MouseEvent)) {
         return arg0;
        }
        func = func.caller;
       }
       return null;
      });
}


另外在Firefox中获取鼠标当前坐标也存在不同的调用方法:




   menu_x = event.x ? event.x : event.pageX;
   menu_y = event.y ? event.y : event.pageY;



在IE和Chrome中,使用event.x和event.y即可获得鼠标坐标,而在Firefox中需使用event.pageX和event.pageY获取。
分享到:
评论

相关推荐

    event兼容调用(IE,Firefox,Chrome)

    ### event兼容调用详解——IE,Firefox,Chrome 在跨浏览器开发中,处理事件(event)的兼容性问题是一项常见的挑战。不同的浏览器对事件模型的支持程度不同,这导致了开发者在编写JavaScript代码时需要考虑多种...

    图片上传 预览 兼容 IE firefox

    兼容不同的浏览器,尤其是老版本的Internet Explorer(IE)和Firefox,对于开发者来说是一项挑战。本篇文章将详细探讨如何实现“图片上传预览”功能,并确保在IE 6/7/8及Firefox(包括新版)等浏览器中的兼容性。 ...

    支持IE,firefox,Chrome复制到剪贴板的JS+FLASH插件ZeroClipboard下载

    它不仅支持Internet Explorer(早期版本可能需要Flash支持),还支持Firefox、Chrome等现代浏览器。这意味着无论用户使用哪种浏览器,只要他们的系统中安装了Flash插件,就可以享受到复制到剪贴板的便捷功能。这对于...

    JavaScript获取鼠标坐标的函数(兼容IE、FireFox、Chrome)

    然而,Firefox 和 Chrome 等现代浏览器则会忽略滚动条的影响,导致在页面有滚动时,获取的坐标不准确。因此,我们需要一种兼容性的方法来处理这个问题。 给出的函数如下: ```javascript function mousePos(e) { ...

    给moz-firefox下添加IE方法和属性

    尤其是在早期,Internet Explorer(IE)与其他现代浏览器如Firefox、Chrome之间存在较大的差异。本文将详细介绍如何通过自定义原型的方法来解决部分兼容性问题,特别是如何为Firefox添加IE特有的方法和属性。 #### ...

    兼容IE8的简单jQuery日期选择器插件

    它确保在IE8及更高版本,以及其他现代浏览器如Chrome、Firefox、Safari和Opera中都能正常工作。 2. **易用性**:这款插件的集成和使用相当简单。只需要在页面中引入jQuery和DCalendar的JS文件,然后通过简单的...

    火狐兼容获取鼠标的坐标

    标题“火狐兼容获取鼠标的坐标”涉及到的是在网页开发中如何在Firefox浏览器上获取鼠标指针的位置。在Web开发中,特别是在JavaScript编程中,获取鼠标坐标是一项常见的需求,用于实现各种交互效果,如拖放功能、点击...

    网页右键ie不支持event.preventDefault和event.returnValue (需要加window)

    这个方法在Firefox、Chrome、Safari、Edge等现代浏览器中都得到了很好的支持。但在IE浏览器,尤其是早期版本中,这个方法并不被支持。 在IE浏览器中,我们需要使用另一种方式来阻止事件的默认行为,那就是通过`...

    js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)

    本文将深入探讨如何编写兼容多浏览器(如IE6/7/8、Firefox和Chrome)的回车键和鼠标焦点事件处理代码。 首先,让我们分析给出的代码片段。这是一个简单的文本输入框,当用户按下回车键时触发搜索事件。文本框的HTML...

    IE的fireEvent方法概述及应用

    需要注意的是,`fireEvent`是IE特有的,其他浏览器(如Firefox、Chrome、Safari、Opera等)并不支持。在跨浏览器的JavaScript开发中,通常会使用`dispatchEvent`方法来代替,它在标准浏览器中提供了类似的功能。然而...

    文本框只能输入数字的实现方法(兼容IE火狐)

    3. `which`:在非IE浏览器(如Firefox、Chrome、Safari)中,`event.which` 返回按键值,与`keyCode` 类似。 实现文本框只允许输入数字的JavaScript代码如下: ```html <!DOCTYPE ...

    禁用键盘上的(全局)指定键兼容iE、Chrome、火狐

    暗示了在不同的浏览器中,包括但不限于Internet Explorer(IE)、Google Chrome、Mozilla Firefox(火狐),要禁用某个特定的键盘按键,需要考虑到这些浏览器在处理键盘事件时的兼容性问题。一般而言,可以通过监听...

    键盘上一张下一张兼容IE/google/firefox等浏览器

    标题中的"键盘上一张下一张兼容IE/google/firefox等浏览器"指的是在网页浏览时,通过键盘的左右箭头键(37和39)或页码翻页键(33和34)实现页面的前后切换,这个功能需要在不同的浏览器如Internet Explorer(IE)、...

    浏览器控件如何在PB中调用

    ### 如何在PowerBuilder中调用浏览器控件 #### 一、引言 在PowerBuilder应用程序开发过程中,有时候我们需要在程序内部嵌入浏览器功能,以便用户可以在应用内直接浏览网页或者展示特定的HTML内容。PowerBuilder...

    web开发非IE内核调用USB摄像头拍照demo

    在现代Web开发中,利用非IE内核的浏览器(如Chrome、Firefox、Safari和Edge)调用USB摄像头拍照已经成为一种常见的需求。这个"web开发非IE内核调用USB摄像头拍照demo"提供了如何实现这一功能的具体示例。在本文中,...

    JS 按钮点击触发(兼容IE、火狐)

    这篇文章将深入探讨如何使用JS实现按钮点击触发,同时确保兼容性,包括Internet Explorer(IE)和Firefox等主流浏览器。 首先,我们需要了解JavaScript中的事件处理。在DOM(Document Object Model)中,事件是用户...

    textarea在文本之后获得焦点,适合ie,火狐,谷歌

    本文将详细讲解如何使`textarea`在用户填写完文本后自动获取焦点,这一功能对于提高用户体验非常关键,特别是考虑到它在不同浏览器(如IE、Firefox和Chrome)中的兼容性。 首先,我们要明白`textarea`的基本结构。...

    让IE8和遨游兼容eWebEditor编辑器

    浏览器兼容性指的是网页或应用程序在不同的浏览器(如Internet Explorer、Chrome、Firefox等)上能够正常运行的能力。由于各浏览器对HTML、CSS和JavaScript的解释和执行方式存在差异,因此,确保网页或应用在所有...

    javascript日历兼容火狐

    在JavaScript中,创建一个兼容不同浏览器的日历,特别是针对火狐(Firefox)这样的非主流浏览器进行优化,是一项重要的任务。本文将深入探讨如何使用JavaScript构建一个跨浏览器的日历,并重点讲解在火狐上的兼容性...

Global site tag (gtag.js) - Google Analytics