`
llyzq
  • 浏览: 585431 次
  • 性别: 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说明,方法,技巧

    这个属性在Internet Explorer(IE)浏览器中被广泛支持,但在非IE浏览器中,如Firefox、Chrome等,则使用`event.target`属性来达到相同的目的。 #### 三、event.srcElement与event.target 在IE中,`event....

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

    例如,在IE浏览器中,事件对象包含srcElement属性,而在Firefox及其他遵循DOM标准的浏览器中,则使用target属性。尽管两者在不同浏览器中的实现有所不同,但其功能是相似的,即指向触发事件的元素。通过event....

    event.srcElement 用法笔记e.target

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

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

    在JavaScript事件处理中,`event.srcElement` 是 Internet Explorer 浏览器特有的属性,用于获取事件发生时的源元素,而 `event.target` 是在 Firefox、Chrome、Safari 和其他遵循 W3C 规范的浏览器中使用,作用相同...

    js事件源window.event.srcElement兼容性写法(详解)

    在IE浏览器中,可以通过`window.event.srcElement`来获取事件源,而在Firefox和其他遵循W3C标准的浏览器中,应使用`event.target`。 `window.event.srcElement`是IE特有的,它返回的是当前事件的源对象,即触发事件...

    兼容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标准的实现不同。以下是一些常见的问题及...

    兼容IE与FireFox

    由于IE和Firefox在事件对象的获取上有差异,我们需要编写一段通用的代码来适应这两种情况。以下是一段示例代码: ```javascript function test(event) { var event = event || window.event; // doSomething } ``...

    火狐下event的使用

    在Firefox和IE中,获取父元素的方法也有所不同: - **Firefox**: 使用`element.parentNode`。 - **IE**: 使用`element.parentElement`。 为了兼容这两种情况,可以使用以下代码: ```javascript var ...

    IE和Firefox在css,JavaScript方面的兼容性

    在事件处理中,IE使用`event.srcElement`来获取触发事件的元素,而Firefox使用`event.target`。为了兼容,可以使用以下代码: ```javascript obj = event.srcElement ? event.srcElement : event.target; ``` ### ...

    ie 和 firefox 的javascript 兼容问题(网上下载的).doc

    ### IE和Firefox的JavaScript兼容性问题详解 #### 1. `document.formName.item("itemName")` 问题 在处理表单元素时,IE 和 Firefox 对 `document.formName.item("itemName")` 的支持存在差异。 **说明:** - **...

    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. **事件对象的访问**: ...

Global site tag (gtag.js) - Google Analytics