js函數(shù)的延遲加載實(shí)現(xiàn)代碼
更新時(shí)間:2012年10月11日 22:52:17 作者:
延遲加載的函數(shù),第一次調(diào)用后,會(huì)覆蓋原來的老函數(shù),以后再次調(diào)用的是新函數(shù),不會(huì)再進(jìn)行條件的判斷,提升效率
復(fù)制代碼 代碼如下:
//非延遲加載的函數(shù),每次調(diào)用都會(huì)進(jìn)行條件判斷
function removeHandler(target,eventType,handler) {
if(target.removeEventListener) {
target.removeEventListener(eventType,handler,false);
}else {
target.detachEvent("on"+eventType,handler);
}
}
//延遲加載的函數(shù),第一次調(diào)用后,會(huì)覆蓋原來的老函數(shù),以后再次調(diào)用的是新函數(shù),不會(huì)再進(jìn)行條件的判斷,提升效率
function addHandler(target,eventType,handler) {
if(target.addEventListener) {
addHandler = function(target,eventType,handler){
target.addEventListener(eventType,handler,false);
}
}else{
addHandler = function(target,eventType,handler){
target.attachEvent("on"+eventType,handler);
}
}
addHandler(target,eventType,handler);
}
//條件預(yù)加載
//條件預(yù)加載確保所有函數(shù)調(diào)用時(shí)間相同。其代價(jià)是在腳本加載時(shí)進(jìn)行檢測。預(yù)加載適用于一個(gè)函數(shù)馬上就會(huì)被用到,而且在整個(gè)頁面生命周期中經(jīng)常使用的場合。
var addEventHandler = document.body.addEventListener ? function(target,eventType,handler) {
target.addEventListener(eventType,handler,false);
} : function(target,eventType,handler) {
target.attachEvent("on"+eventType,handler);
}
相關(guān)文章
javascript實(shí)現(xiàn)節(jié)點(diǎn)(div)名稱編輯
這篇文章主要介紹了js實(shí)現(xiàn)節(jié)點(diǎn)(div)名稱編輯,需要的朋友可以參考下2014-12-12
推薦5 個(gè)常用的JavaScript調(diào)試技巧
這篇文章主要介紹了推薦5 個(gè)常用的JavaScript調(diào)試技巧,需要的朋友可以參考下2015-01-01
JavaScript實(shí)現(xiàn)將數(shù)組中所有元素連接成一個(gè)字符串的方法
這篇文章主要介紹了JavaScript實(shí)現(xiàn)將數(shù)組中所有元素連接成一個(gè)字符串的方法,涉及javascript中采用join方法進(jìn)行數(shù)組轉(zhuǎn)化的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
JavaScript使用html2canvas實(shí)現(xiàn)截取HTML并生成圖片
在前端開發(fā)中,有時(shí)我們需要將網(wǎng)頁的一部分或整個(gè)頁面截取并保存為圖片,這在生成報(bào)告、分享內(nèi)容或保存用戶界面狀態(tài)等場景中非常有用,本文將介紹如何使用 JavaScript 庫 html2canvas 來實(shí)現(xiàn)這一功能,并提供一個(gè)完整的示例,需要的朋友可以參考下2024-10-10
JavaScript中防抖和節(jié)流的區(qū)別及適用場景
這篇文章主要介紹了JavaScript中防抖和節(jié)流的區(qū)別及適用場景,文章通過圍繞主題的相關(guān)資料展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-05-05
微信小程序開發(fā)之實(shí)現(xiàn)食堂點(diǎn)餐系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了如何通過微信小程序開發(fā)一個(gè)簡單的食堂點(diǎn)餐系統(tǒng),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以和小編一起學(xué)習(xí)一下2023-01-01

