一輩子的程序員?

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

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


          網站導航:
           
          主站蜘蛛池模板: 滦平县| 宁城县| 沈阳市| 三河市| 喀什市| 濮阳市| 沂水县| 曲麻莱县| 介休市| 池州市| 都昌县| 怀远县| 宁国市| 房产| 建水县| 威信县| 中方县| 天镇县| 红原县| 长治市| 永寿县| 乌拉特后旗| 喀喇沁旗| 崇州市| 宁国市| 郧西县| 登封市| 亚东县| 保定市| 大丰市| 滨州市| 武冈市| 富民县| 治多县| 漾濞| 麟游县| 江油市| 中牟县| 利川市| 松溪县| 行唐县|