一輩子的程序員?

          愛你一生不變-芳芳!
          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
          謝謝,轉了。

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


          網站導航:
           
          主站蜘蛛池模板: 龙州县| 建阳市| 罗源县| 曲靖市| 武宁县| 吉木萨尔县| 菏泽市| 保亭| 锡林郭勒盟| 巴塘县| 宁津县| 东方市| 日照市| 老河口市| 府谷县| 久治县| 桓仁| 阳曲县| 女性| 称多县| 天水市| 中阳县| 刚察县| 丁青县| 大悟县| 邳州市| 高碑店市| 静乐县| 稻城县| 舒兰市| 安国市| 宣汉县| 星座| 绥江县| 名山县| 虹口区| 蕉岭县| 贵德县| 乌拉特前旗| 仁怀市| 观塘区|