一輩子的程序員?

          愛你一生不變-芳芳!
          posts - 27, comments - 15, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
          attachEvent() / addEventListener() 對象添加觸發事件(轉)

          有時候當某一對象的某一事件被觸發時,它所要執行的程序可能是一大串,有可能是要呼叫某一函數,也有可能同時又要呼叫另一函數。

          document.getElementById("btn").onclick = method1;
          document.getElementById("btn").onclick = method2;
          document.getElementById("btn").onclick = method3;
          如果這樣寫,那么將會只有medhot3被執行

          在IE中使用addachEvent ,

          var btn1Obj = document.getElementById("btn1");
          //object.attachEvent(event,function);
          btn1Obj.attachEvent("onclick",method1);
          btn1Obj.attachEvent("onclick",method2);
          btn1Obj.attachEvent("onclick",method3);
          執行順序為method3->method2->method1

          Mozilla系列中需要使用 addEventListener

          var btn1Obj = document.getElementById("btn1");
          //element.addEventListener(type,listener,useCapture);
          btn1Obj.addEventListener("click",method1,false);
          btn1Obj.addEventListener("click",method2,false);
          btn1Obj.addEventListener("click",method3,false);
          執行順序為method1->method2->method3

          看看gmail的代碼

          var Ka=navigator.userAgent.toLowerCase();
          var rt=Ka.indexOf("opera")!=-1;
          var r=Ka.indexOf("msie")!=-1&&(document.all&&!rt);

          function Zl(a,b,c){if(r){a.attachEvent("on"+b,c)}else{a.addEventListener(b,c,false)}}

          評論

          # re: attachEvent() / addEventListener() 對象添加觸發事件(轉)  回復  更多評論   

          2008-10-11 21:48 by Felix021
          謝謝,轉了。

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 廉江市| 青海省| 英超| 吉木萨尔县| 巴楚县| 西城区| 诸城市| 浮山县| 定安县| 尼勒克县| 潢川县| 湟源县| 正定县| 河东区| 鄂托克旗| 荥阳市| 开阳县| 蒲城县| 万山特区| 孝感市| 闽清县| 广宗县| 贵南县| 湟中县| 五指山市| 连江县| 邢台市| 遂宁市| 侯马市| 灵台县| 夏邑县| 通渭县| 新巴尔虎右旗| 丰台区| 沂源县| 临湘市| 洱源县| 北京市| 盐山县| 陈巴尔虎旗| 翁源县|