JS事件在IE与FF中的区别是什么?IE与FF详细解析

2024-06-24 10:33:57阅读量:34 字体:

之道的易搜项目中的搜索分类是通过JS动态生成的,每个生成的元素都要动态的添加属性、事件。其中,添加属性可以采用赋值的方式,这对IE和FF都是适用的。

JS事件在IE与FF中的区别是什么?IE与FF详细解析

比如:

var element = document.createElement('select');

element.id = "myselect";

上面的语句在IE和FF中都会有同样的效果,并且运行正常。但是我们创建的元素,大部分是要给其动态添加事件的,显然,我们不能和添加属性一样,直接在后面打个dot,然后写个事件名,然后后面跟着一串代码,那样是会报错的。所以我们可以采用如下的方法来添加事件:

首先:我们要判断当前的浏览器是什么浏览器,我们仍然延用之前的定义,

if( element.attachEvent ){

//为IE以及IE内核的浏览器(1)

}else if( element.addEventListener){

//为FF以及NS内核的浏览器(2)

}

上面的if语句块就是帮我们完成当前浏览器是IE还是FF的判断。

浏览器判断出来,然后我们要做的就是把函数注册到元素里面。下面我们给出我们定义的一个功能函数:

function showElementId(elmt){

alert(elmt.id);

}

函数功能很简单,就是提示出参数里面的元素的ID。

如果是IE浏览器,我们把如下代码插入到上面的注释(1)处:

element.attachEvent( "onclick",function(){showElementId(elmt)});

如果是FF浏览器,我们把如下代码插入到上面的注释(2)处:

var eventName = "onclick".replace(/on(.*)/i,'$1');

element.addEventListener( eventName,function(){showElementId(elmt)},false);

因为在FF中给元素注册事件的时候,不需要事件名称前面的“on”,所以要把on给替换掉。

好啦,如果今后各位同行在开发项目中,遇到要用JS动态给元素添加事件的时候,就可以采用上面的方法。那样就可以避免用户在用FF浏览器时候不能使用你幸苦开发的功能了。


推荐阅读

  • 朋友圈设置三天可见是对所有人吗

    朋友圈设置三天可见是对所有人吗

    朋友圈三天可见是针对朋友圈的一个设置,针对所有的朋友,朋友圈设置三天可见后,所有朋友只能看到你最近三天的朋友圈。朋友圈设置三天可见的具体操作如下: 朋友圈设置三天可见是对所有人吗 1、打开手机微信ap...

    阅读: 730

  • 微信很小的那种表情包怎么做的

    微信很小的那种表情包怎么做的

    平常生活中微信很小的那种表情包可以在微信的小程序里根据自己的喜好进行制作,通过以下步骤制作微信表情包: 微信很小的那种表情包怎么做的 1、打开微信,切换到发现页面,点击小程序”进入小程序页...

    阅读: 1363

  • 剪映怎么在中间插视频

    剪映怎么在中间插视频

    想要使用剪映视频中间插入另一个视频,可以把原本视频分割再插入新的视频,通过以下步骤使用剪映在中间插视频: 剪映怎么在中间插视频 1、打开剪映,点击开始创作”进入选择页面。 2、选择一个视...

    阅读: 752

  • qq进群特效怎么关闭

    qq进群特效怎么关闭

    想要关闭qq进群特效,可以在qq群的进群特效相关功能进行关闭,开通超级会员才能享受进群特效,通过以下步骤关闭qq进群特效: qq进群特效怎么关闭 1、打开qq,点击qq群”进入qq群聊天页...

    阅读: 697

  • 地摊怎么申请微信商家码

    地摊怎么申请微信商家码

    地摊想要申请微信商家收款二维码,可以从微信收款小账本进行相关设置即可申请微信商家收款二维码,通过以下步骤可以申请微信商家收款二维码: 地摊怎么申请微信商家码 1、打开微信,切换到发现页面,点击小程序&...

    阅读: 798

  • 微信拉黑和删除

    微信拉黑和删除

    微信加入黑名单后给对方发消息,对方可以看到但不能回复,微信删除后双方都不能发消息,微信拉黑和删除具体步骤如下: 微信拉黑和删除 1、打开微信,切换到通讯录页面,点击联系人”进入联系人名片...

    阅读: 728