您的位置:首页 > Web前端 > JavaScript

JavaScript函数惰性载入

2016-01-06 22:18 585 查看
// 一般兼容性处理方式,每次函数执行都进行能力检测。
var addClick1 = function (ele, callback){
if(ele.addEventListener){
ele.addEventListener('click', callback, false);
}else{
ele.onclick = callback;
}
}

console.log('addClick1', addClick1);

// 惰性载入1:在函数声明时指定适当的函数。
var addClick2 = function () {
if(document.addEventListener){
return function (ele, callback){
ele.addEventListener('click', callback, false);
};
}else{
return function (ele, callback){
ele.onclick = callback;
}
}
}();

console.log('addClick2', addClick2);

// 惰性载入2:在函数首次执行时指定适当的函数。
var addClick3 = function(ele, callback){
if(ele.addEventListener){
addClick3 = function(ele, callback){
ele.addEventListener('click', callback, false);
}
}else{
addClick3 = function(ele, callback){
ele.onclick = callback;
}
}

addClick3(ele, callback);
}

console.log('addClick3-1', addClick3);

addClick3(document, function(){console.log('Yo!')});

console.log('addClick3-2', addClick3);


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息