JavaScript跨瀏覽器的添加刪除事件綁定函數

          javascript跨瀏覽器添加事件綁定 bind()

          IE 的事件綁定函數是 attachEvent;而 Firefox, Safari 是 addEventListener;Opera 則兩種都支持。使用jQuery就可以使用簡單的bind(),或者$().click()之類的函數解決,而如果不使用JavaScript框架的時候,大家可是使用下面的封裝bind()函數。???????
          /************************************
          * 添加事件綁定
          * @param obj?? : 要綁定事件的元素
          * @param type : 事件名稱。不加 "on". 如 : "click" 而不是 "onclick".
          * @param fn??? : 事件處理函數
          ************************************/

          function bind( obj, type, fn ){if( obj.attachEvent){
          ??????? obj['e'+type+fn]= fn;
          ??????? obj[type+fn]=function(){obj['e'+type+fn]( window.event);}
          ??????? obj.attachEvent('on'+type, obj[type+fn]);}else
          ??????? obj.addEventListener( type, fn,false);}

          例如給document添加一個點擊事件??????
          var fn=function(){alert("Hello, World!!");};
          bind(document,"click", fn);

          刪除事件綁定 unbind()

          unbind()對于上面的bind()函數??????
          /************************************
          * 刪除事件綁定
          * @param obj : 要刪除事件的元素
          * @param type : 事件名稱。不加 "on". 如 : "click" 而不是 "onclick"
          * @param fn : 事件處理函數
          ************************************/

          function unbind( obj, type, fn ){if( obj.detachEvent){
          ??????? obj.detachEvent('on'+type, obj[type+fn]);
          ??????? obj[type+fn]=null;}else
          ??????? obj.removeEventListener( type, fn,false);}

          例如刪除第一個綁定的document點擊事件:
          unbind(document,"click",fn);
          摘自:http://www.js8.in/408.html

          posted on 2010-08-11 08:30 飛熊 閱讀(811) 評論(0)  編輯  收藏 所屬分類: javaScript

          <2010年8月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 永胜县| 高要市| 贵州省| 石首市| 闽清县| 土默特左旗| 泾阳县| 惠水县| 柳林县| 措美县| 政和县| 桂林市| 香格里拉县| 定襄县| 怀远县| 凤凰县| 张掖市| 华亭县| 潼南县| 南郑县| 容城县| 天镇县| 启东市| 石台县| 四子王旗| 红桥区| 天祝| 措勤县| 开封县| 汾西县| 贵港市| 塘沽区| 花垣县| 河西区| 信丰县| 永兴县| 三原县| 杭锦后旗| 阜宁县| 武隆县| 勐海县|