`
llyzq
  • 浏览: 579877 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

IE的event.srcElement和Firefox的event.target

阅读更多
在IE下,event对象有srcElement属性,但是没有target属性;Firefox下,even对象有target属性,但是没有srcElement属性.。

    解决方法:使用obj(obj = event.srcElement ? event.srcElement : event.target;)来代替IE下的event.srcElement或者Firefox下的event.target.。同时注意event的 兼容性问题。

感觉这个挺好,可以捕获当前事件作用的对象,如event.srcElement.tagName可以捕获活动标记名称。
注意获取的标记都以大写表示,如"TD","TR","A"等。所以把看过的一些抄下来,不记得的时候再来看看。

<script type="text/javascript">
    function tdclick(){
        if(event.srcElement.tagName.toLowerCase()=='td')
             alert("行:"+(event.srcElement.parentNode.rowIndex+1)+"列:"+(event.srcElement.cellIndex+1));
     }
</script>

event.srcElement从字面上可以看出来有以下关键字:事件,源     他的意思就是:当前事件的源,

我们可以调用他的各种属性 就像:document.getElementById("")这样的功能,

经常有人问 firefox 下的 event.srcElement 怎么用,在此详细说明:

IE下,event对象有srcElement属性,但是没有target属性;Firefox下,event对象有target属性,但是没有srcElement属性.但他们的作用是相当的,即:

firefox 下的 event.target = IE 下的 event.srcElement

解决方法:使用obj(obj = event.srcElement ? event.srcElement : event.target;)来代替IE下的event.srcElement或者Firefox下的event.target.

在 ie中处理事件直接使用window.event对象即可,但在firefox中,是没有 window.event对象的,函数需要使用事件的时候,需要在事件发生时把事件作为参数传递给函数,不象在ie中,事件对象是全局的,随处都可以访 问.下面这个getEvent()函数可以兼容firefox和ie,只需要在访问事件对象的函数的开始调用getEvent()即可,不用再把事件作为 参数传递.以下代码已经实验通过!

function myfunc()
{
var evt=getEvent();
var element=evt.srcElement || evt.target;
}

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;
}

分享到:
评论

相关推荐

    event.srcElement 用法笔记e.target

    这个属性在Internet Explorer浏览器中被广泛使用,而Firefox和其他遵循W3C标准的浏览器则使用`event.target`来达到相同的目的。两者的本质都是为了获取当前事件作用的源头对象。 在事件处理函数中,`event....

    IE event.srcElement和FF event.target 功能比较

    `event.srcElement` 是Internet Explorer浏览器中的特有属性,而`event.target` 是W3C标准中定义的属性,适用于包括Firefox在内的其他现代浏览器。 `event.srcElement` 和 `event.target` 的主要作用是帮助开发者...

    js中的触发事件对象event.srcElement与event.target详解

    firefox 下的 event.target = IE 下的 event.srcElement 解决方法 使用obj = event.srcElement ? event.srcElement : event.target; 或:var evtTarget = event.target || event.srcElement; event.srcElement.id ...

    兼容IE和Firefox获得keyBoardEvent对象

    )来代替IE下的event.srcElement或者Firefox下的event.target。请同时注意event的兼容性问题。 11. window.location.href问题 IE或者Firefox2.0.x可以使用window.location或window.location.href;Firefox1.5.x只能...

    window.event.srcElement 得到事件源对象

    在非IE浏览器中,如Firefox、Chrome、Safari等,你应该使用`event.target`来获取触发事件的元素,因为`window.event`在这些浏览器中并不可用。为了确保代码的跨浏览器兼容性,可以这样写: ```javascript function ...

    JavaScript兼容浏览器FFIE技巧[定义].pdf

    由于Firefox(MF/FF)和Internet Explorer(IE)对JavaScript的支持存在差异,因此需要采取特定的兼容性策略。以下是一些关键的兼容性问题及其解决方案: 1. **事件对象**: - **window.event**:IE支持window....

    同时兼容IE和FireFox的事件处理event代码--添加文件上传例子

    "同时兼容IE和FireFox的事件处理event代码--添加文件上传例子"这个主题聚焦于解决浏览器之间的差异,尤其是针对老版本的Internet Explorer(IE)和Firefox。在这些早期浏览器中,事件处理的实现方式有所不同,导致...

    HTML在IE浏览器和FF浏览器中标签的使用

    在网页开发过程中,HTML元素的渲染和交互在不同的浏览器间可能存在差异,尤其是Internet Explorer (IE)和Firefox (FF)之间。这些差异主要源于浏览器对HTML、CSS和JavaScript标准的实现不同。以下是一些常见的问题及...

    Javascript在IE和FireFox中的兼容处理

    - IE的事件目标是`event.srcElement`,Firefox则是`event.target`。可以统一使用`event.target`,因为它在所有现代浏览器中都可用。 8. **body的存在问题** - IE有时在`document.body`未加载时就执行脚本,Fire...

    js兼容IE火狐问题

    由于各个浏览器对JavaScript的支持程度和实现方式有所差异,所以需要采取特定的策略来处理这些差异,以确保代码在Internet Explorer(IE)和Mozilla Firefox(FF)等浏览器上都能正常运行。以下是针对IE和FF兼容性...

    IE和Mozilla中脚本兼容性汇总

    IE(Internet Explorer)和Mozilla(包括Firefox)对JavaScript事件处理和事件对象的处理方式存在差异,这给开发者带来了额外的工作量。以下是一些关于IE和Mozilla中脚本兼容性的关键点: 1. **事件对象的访问**: ...

    FF与IE对javascript和CSS的区别

    本文将详细讨论FF(Firefox)与IE(Internet Explorer)在处理这两种技术时存在的差异,并提供相应的解决策略。 1. **form元素访问方式**:在IE下,可以使用`document.formName.item("itemName")`或`document.form...

    Javascript 阻止javascript事件冒泡,获取控件ID值

    1. 如何阻止事件冒泡 代码如下://非IE if (event && event.stopPropagation) event.stopPropagation(); else//IE window.event.cancelBubble = true;...event.target.tagName + “:” + event.target.id&#41;; }

    javascript兼容性解决方法大全

    对于`event.srcElement`和`event.target`,IE和FF各有自己的实现。在IE下,可以使用`event.srcElement`获取触发事件的元素,而在FF下则是`event.target`。为实现兼容,可以使用如下代码: ```javascript var target...

    IE和firefox浏览器的event事件兼容性汇总

    本文将深入探讨IE和Firefox浏览器中event事件的兼容性问题。 1. **event对象的使用** 在IE浏览器中,事件处理函数可以直接访问到全局的`event`对象,而Firefox和其他遵循W3C标准的浏览器则不支持这种全局访问方式...

    JS在IE和FireFox之间常用函数的区别小结

    1.event.srcElement 代码如下: //srcElement只能在IE下使用target是FireFox使用的,下面是兼容性写法 var obj = e.srcElement ? e.srcElement : e.target; 2.e.originalEvent.x 代码如下: // e.originalEvent.x 只能...

    一些Javascript的IE和Firefox(火狐)兼容性的问题总结及常用例子

    - IE使用`event.srcElement`,Firefox使用`event.target`。为兼容,可以这样处理: ```javascript var obj = event.srcElement ? event.srcElement : event.target; ``` 11. **window.location.href**: - 旧...

    JavaScript在IE和FF中的区别

    )来代替 IE 下的 event.srcElement 或者 Firefox 下的 event.target。 在JavaScript编程中,开发者经常遇到的一个挑战是代码的跨浏览器兼容性,尤其是在处理Internet Explorer (IE) 和 Firefox (FF) 这两种浏览器时...

    桌面 分块 拖拽js代碼

    Firefox uses event.target here, MSIE uses event.srcElement */ var target = ev.target || ev.srcElement; var mousePos = mouseCoords(ev); // mouseOut event - fires if the item the mouse is on has ...

    IE和Mozilla的兼容性汇总event

    本文将深入探讨IE(Internet Explorer)和Mozilla(主要指Firefox)在处理`event`对象时的兼容性问题,这对于编写跨浏览器的JavaScript代码至关重要。 1. **event对象的使用** IE浏览器允许直接在事件处理函数中...

Global site tag (gtag.js) - Google Analytics