首頁  >  文章  >  web前端  >  js函數的延遲載入實作程式碼_javascript技巧

js函數的延遲載入實作程式碼_javascript技巧

WBOY
WBOY原創
2016-05-16 17:49:121181瀏覽
複製程式碼 程式碼如下:

//非延遲載入的函數,每次呼叫都會進行條件判斷
function removeHandler(target,eventType,handler) {
if(target.removeEventListener) {
target.removeEventListener(eventType,handler,false);
}else {
"on" eventType,handler);
}
}
//延遲載入的函數,第一次呼叫後,會覆蓋原來的老函數,以後再呼叫的是新函數,不會再進行條件的判斷,提升效率
function addHandler(target,eventType,handler) {
if(target.addEventListener) {
addHandler = function(target,eventType,handler){
target.addHandler = function(target,eventType,handler){
target.addHandler >ener (eventType,handler,false);
}
}else{
addHandler = function(target,eventType,handler){
target.attachEvent("on" eventType,handler);
}
}
addHandler(target,eventType,handler);
}


//條件預先載入
//條件預先載入確保所有函數呼叫時間相同。其代價是在腳本載入時進行檢測。預先載入適用於一個函數馬上就會被用到,而且在整個頁面生命週期中經常使用的場合。

var addEventHandler = document.body.addEventListener ? function(target,eventType,handler) {
target.addEventListener(eventType,handler,false);
} : function(target,eventType,handler ) {
target.attachEvent("on" eventType,handler);
}
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn