JS事件在IE与FF中的区别详细解析

时间:2023-09-24 23:02:35 

之道的易搜项目中的搜索分类是通过JS动态生成的,每个生成的元素都要动态的添加属性、事件。其中,添加属性可以采用赋值的方式,这对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浏览器时候不能使用你幸苦开发的功能了。

标签:JS事件
0
投稿

猜你喜欢

  • Python中的self用法详解

    2023-08-22 15:34:19
  • Python sklearn 中的 make_blobs() 函数示例详解

    2022-07-24 21:45:48
  • Win7的IIS7中ASP获得的系统日期格式为斜杠的解决办法

    2012-12-04 19:57:33
  • Golang利用自定义模板发送邮件的方法详解

    2023-06-29 07:07:16
  • 使用Python实现 学生学籍管理系统

    2023-08-21 18:42:47
  • asp简单的仿图片验证码

    2008-03-12 11:54:00
  • 在python下实现word2vec词向量训练与加载实例

    2022-06-12 23:49:05
  • 在线一元二次方程计算器实例(方程计算器在线计算)

    2024-04-10 10:45:41
  • mysql实现合并同一ID对应多条数据的方法

    2024-01-15 16:19:34
  • json显示日期带T问题的解决方法

    2022-05-12 16:50:37
  • Python中模块(Module)和包(Package)的区别详解

    2021-06-17 09:05:22
  • Python代码执行时间测量模块timeit用法解析

    2023-06-13 16:14:04
  • Python采集电影评论实战示例

    2022-02-25 22:14:37
  • Java中正则表达式split()特殊符号使用详解

    2022-06-27 15:59:32
  • php+mysqli使用面向对象方式更新数据库实例

    2023-06-23 00:30:23
  • python在控制台输出进度条的方法

    2022-01-12 09:27:15
  • python实现邮件发送功能

    2023-10-11 02:27:09
  • 在Ubuntu 20.04中安装Pycharm 2020.1的图文教程

    2022-05-28 23:03:48
  • Windows下mysql community server 8.0.16安装配置方法图文教程

    2024-01-25 22:36:02
  • 利用python数据分析处理进行炒股实战行情

    2022-01-30 10:28:29
  • asp之家 网络编程 m.aspxhome.com