一輩子的程序員?

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

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


          網站導航:
           
          主站蜘蛛池模板: 庐江县| 洛阳市| 太和县| 布尔津县| 彭水| 香格里拉县| 民丰县| 安西县| 沙洋县| 白城市| 工布江达县| 平安县| 肇东市| 揭阳市| 德令哈市| 嘉义市| 南昌县| 铁力市| 宁都县| 加查县| 湘西| 定结县| 东莞市| 临清市| 韶关市| 若尔盖县| 昌都县| 玉溪市| 乐清市| 龙游县| 沙田区| 三都| 陆川县| 洛南县| 济阳县| 澎湖县| 寻乌县| 揭东县| 明星| 五原县| 汤阴县|