firefox下event.srcElemnet问题

在使用一个网页拾色器的时候,发现FF不支持event.srcElemnet方法,在网上查找了n多方法,都不可行。有的说FF支持even.target但是,我用这个属性的时候一直提示event未定义,很是郁闷,后来,经过多番查找,找到了兼容IE FF的方法。代码如下:
    function myfunc(){ var evt=getEvent(); 
        var element=evt.srcElement evt.target; 
        return element; 
    } 
     
    function getEvent() 
    { 
        if(document.all) 
        { 
        return window.event;//如果是ie 
        } 
    func=getEvent.caller; 
    while(func!=null) 
    { 
        var arg0=func.arguments[0]; 
        if(arg0) 
        { 
            if((arg0.constructor==Event arg0.constructor ==MouseEvent) 
            (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)) 
            { 
            return arg0; 
            } 
        } 
            func=func.caller; 
        } 
        return null; 
    }

时间: 2025-01-08 00:32:34

firefox下event.srcElemnet问题的相关文章

IE和Firefox下event事件杂谈_javascript技巧

因为javascript的事件模型有三种,它们分别是NN4.IE4+和W3C/Safari;这也造成了在不同的浏览器中处理event的差异,这里结合一些零碎的代码来说明如何做到event在IE4+和Firefox下的正常工作.首先看如下代码: 复制代码 代码如下: function doEventThing(eventTag){ var event = eventTag||window.event; var currentKey = event.charCode||event.keyCode;

Firefox下的window.event问题

如何解决firefox下window.event的问题,如下代码:     <body>       <script>       function mouseMove(ev) //ev作用参数传递firfox才能起作用       {       Ev= ev window.event;       var mousePos = mouseCoords(Ev);       document.getElementById("xxx").value = mous

关于火狐(firefox)及ie下event获取的两种方法_javascript技巧

经常有同事问我在火狐浏览器怎么获取event的方法,大多是想获取event.keyCode的功能两种方法 第一种方法: 复制代码 代码如下: function a(e){ e=e||window.event; alert(e.keyCode); } ie浏览器如下调用 复制代码 代码如下: <body onclick="a()"> firefox火狐浏览器如下调用 复制代码 代码如下: <body onclick="a(event)"> 这样

解决 FireFox 下[使用event很麻烦] 的问题._javascript技巧

在FireFox下编写事件处理函数是很麻烦的事. 因为FireFox并没有 window.event . 如果要得到 event 对象,就必须要声明时间处理函数的第一个参数为event. 所以为了兼容IE与FireFox,一般的事件处理方法为: btn.onclick=handle_btn_click; function handle_btn_click(evt) {     if(evt==null)evt=window.event;//IE     //处理事件. } 对于简单的程序,这不算

解决FireFox下[使用event很麻烦]的问题_javascript技巧

在FireFox下编写事件处理函数是很麻烦的事. 因为FireFox并没有 window.event . 如果要得到 event 对象,就必须要声明时间处理函数的第一个参数为event. 所以为了兼容IE与FireFox,一般的事件处理方法为: btn.onclick=handle_btn_click; function handle_btn_click(evt) {     if(evt==null)evt=window.event;//IE     //处理事件. } 对于简单的程序,这不算

IE和Firefox下javascript的兼容写法小结_javascript技巧

1.发现IE下input标签的id属性默认和name属性相同,而Firefox必须明确写出id属性的名称否则不能使用id属性. 如:<input type="text" name="username" value=""> 在IE下如下代码可以执行而在Firefox下却不可以: <script> alert(document.getElementById("username").value); </

让Firefox支持event对象实现代码_javascript技巧

通常为了兼容IE与FireFox,一般的事件处理方法为: 复制代码 代码如下: btn.onclick=handle_btn_click; function handle_btn_click(evt){ if(evt==null)evt=window.event;//IE //处理事件. } 对于简单的程序,这不算麻烦. 但对于一些复杂的程序,某写函数根本就不是直接与事件挂钩的.如果要把event传进该参数,那么所有的方法都要把event传来传去..这简直就是噩梦. 下面介绍一个解决这个麻烦事的

IE和FireFox下&amp;#106avascript读写XML实现广告轮换

xml|广告 最近更新网站首页广告,ASP.NET的广告控件很容易实现这点,可首页是静态页面,联想广告控件的原理决定采用javascript+xml实现这点方面配置,更新广告时只要更新xml即可,方便了广告轮换xml结构如下<ad><tupian>http://www.seehaha.com/images/060901-150.100.2.gif</tupian><tupian>http://www.seehaha.com/xml/061009-300.10

CSS在IE与Firefox下不同的解析及解决方案

css|解决 1.IE与Firefox下对CSS解析的区别对高度的解析IE:将根据内容的高度变化,包括未定义高度的图片内容,即使定义了高度,当内容超过高度时,将使用实际高度Firefox:没有定义高度时,如果内容中包括了图片内容,MF的高度解析是根据印刷标准,这样就会造成和实际内容高度不符合的情况:当定义了高度,但是内容超过高度时,内容会超出定义的高度,但是区域使用的样式不会变化,造成样式错位. 结论:大家在可以确定内容高度的情况下最好定义高度,如果真的没有办法定义高度,最好不用使用边框样式,否