window.addEventListener來(lái)解決讓一個(gè)js事件執(zhí)行多個(gè)函數(shù)
更新時(shí)間:2012年12月26日 11:35:31 作者:
可能你也碰到過(guò)這種情況,就是在js的代碼中用了window.onload后,可能會(huì)影響到body中的onload事件。這時(shí)就要用window.attachEvent和window.addEventListener來(lái)解決一下,需要的朋友可以參考下
可能你也碰到過(guò)這種情況,就是在js的代碼中用了window.onload后,可能會(huì)影響到body中的onload事件。你可以全寫(xiě)在body中,也可以全放到window.onload中,但是這樣并不是很方便,有時(shí)我們需要兩個(gè)同時(shí)用到。這時(shí)就要用window.attachEvent和window.addEventListener來(lái)解決一下。
下面是一個(gè)解決方法。至于attachEvent和addEventListener的用法,可以自己Google或百度一下。
if (document.all){
window.attachEvent('onload',函數(shù)名)//IE中
}
else{
window.addEventListener('load',函數(shù)名,false);//firefox
}
在近來(lái)的工作中,用到了attachEvent方法,該方法可以為某一事件附加其它的處理事件,有時(shí)候可能比較有用,這里將其基本用法總結(jié)一下。
其語(yǔ)法可以查看《DHTML手冊(cè)》,里面有詳細(xì)的說(shuō)明,這里貼一個(gè)例子,該例子來(lái)自互聯(lián)網(wǎng):
document.getElementById("btn").onclick = method1;
document.getElementById("btn").onclick = method2;
document.getElementById("btn").onclick = method3;
如果這樣寫(xiě),那么將會(huì)只有medhot3被執(zhí)行
寫(xiě)成這樣:
var btn1Obj = document.getElementById("btn1");
//object.attachEvent(event,function);
btn1Obj.attachEvent("onclick",method1);
btn1Obj.attachEvent("onclick",method2);
btn1Obj.attachEvent("onclick",method3);
執(zhí)行順序?yàn)閙ethod3->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);
執(zhí)行順序?yàn)閙ethod1->method2->method3
下面是一個(gè)解決方法。至于attachEvent和addEventListener的用法,可以自己Google或百度一下。
復(fù)制代碼 代碼如下:
if (document.all){
window.attachEvent('onload',函數(shù)名)//IE中
}
else{
window.addEventListener('load',函數(shù)名,false);//firefox
}
在近來(lái)的工作中,用到了attachEvent方法,該方法可以為某一事件附加其它的處理事件,有時(shí)候可能比較有用,這里將其基本用法總結(jié)一下。
其語(yǔ)法可以查看《DHTML手冊(cè)》,里面有詳細(xì)的說(shuō)明,這里貼一個(gè)例子,該例子來(lái)自互聯(lián)網(wǎng):
復(fù)制代碼 代碼如下:
document.getElementById("btn").onclick = method1;
document.getElementById("btn").onclick = method2;
document.getElementById("btn").onclick = method3;
如果這樣寫(xiě),那么將會(huì)只有medhot3被執(zhí)行
寫(xiě)成這樣:
復(fù)制代碼 代碼如下:
var btn1Obj = document.getElementById("btn1");
//object.attachEvent(event,function);
btn1Obj.attachEvent("onclick",method1);
btn1Obj.attachEvent("onclick",method2);
btn1Obj.attachEvent("onclick",method3);
執(zhí)行順序?yàn)閙ethod3->method2->method1
如果是Mozilla系列,并不支持該方法,需要用到addEventListener
復(fù)制代碼 代碼如下:
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);
執(zhí)行順序?yàn)閙ethod1->method2->method3
相關(guān)文章
使用BootStrapValidator完成前端輸入驗(yàn)證
這篇文章主要為大家詳細(xì)介紹了使用BootStrapValidator來(lái)完成前端輸入驗(yàn)證,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09js操作數(shù)組函數(shù)實(shí)例小結(jié)
這篇文章主要介紹了js操作數(shù)組函數(shù),實(shí)例分析了JavaScript針對(duì)數(shù)組刪除指定元素、去重及刪除指定下標(biāo)元素的實(shí)現(xiàn)方法,需要的朋友可以參考下2015-12-12Selenium執(zhí)行Javascript腳本參數(shù)及返回值過(guò)程詳解
這篇文章主要介紹了Selenium執(zhí)行Javascript腳本參數(shù)及返回值過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04利用JavaScript模擬京東快遞單號(hào)查詢(xún)效果
這篇文章主要為大家介紹了如何通過(guò)JavaScript模擬實(shí)現(xiàn)京東的快遞單號(hào)查詢(xún)效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動(dòng)手試一試2022-03-03Java中int與integer的區(qū)別(基本數(shù)據(jù)類(lèi)型與引用數(shù)據(jù)類(lèi)型)
這篇文章主要介紹了int與integer的區(qū)別(基本數(shù)據(jù)類(lèi)型與引用數(shù)據(jù)類(lèi)型),簡(jiǎn)單的說(shuō) int 是基本數(shù)據(jù)類(lèi)型,integer 是引用數(shù)據(jù)類(lèi)型,具體區(qū)別詳解大家參考下本文2017-02-02