麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

JS事件在IE與FF中的區別詳細解析

2019-11-20 21:38:58
字體:
來源:轉載
供稿:網友

之道的易搜項目中的搜索分類是通過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瀏覽器時候不能使用你幸苦開發的功能了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黑色丝袜美美女被躁视频 | 亚洲成人精品区 | 欧美日韩爱爱视频 | 国产亚洲精品综合一区91 | 最新黄色电影网站 | 国产xxxxx在线观看 | av手机免费在线观看 | 免费一级特黄毛片 | 成人综合一区二区 | 91精品国产综合久久男男 | 操碰97| 激情视频免费看 | 亚洲白嫩在线观看 | 粉嫩粉嫩一区二区三区在线播放 | 天天色狠狠干 | 午夜视频亚洲 | 欧美激情在线播放 | 日本免费中文字幕 | 久久久久久久免费看 | 国产亚洲精品久久久久婷婷瑜伽 | h色网站在线观看 | 国产亚洲精品久久久闺蜜 | 欧美成人精品一区二区 | 99爱视频在线观看 | 精品国产高清一区二区三区 | 亚洲一区二区三区高清 | 欧洲精品久久久 | 欧美一级高清片在线 | 91午夜免费视频 | 免费一级毛片在线播放视频老 | 99精品视频在线看 | 成人 日韩 | 欧美成人性生活 | 丰满年轻岳中文字幕一区二区 | 久久伊 | fc2成人免费人成在线观看播放 | 欧美成年视频 | 一级外国毛片 | 欧美日韩一区三区 | 国产69久久精品成人看 | 蜜桃一本色道久久综合亚洲精品冫 |