내 생각은 독립 모듈을 작성할 때 이러한 메서드를 $.tools 개체에 통합하는 데 주의를 기울이고, 다음으로 페이지에서 컨트롤러를 호출하여 모듈을 로드하고, 로드가 완료된 후 $.tools의 개체를 판단하는 것입니다. 해당 숫자가 미리 정의된 로드된 모듈 수와 동일합니까? 그렇지 않으면 계속 대기합니다. 동일하면 콜백 함수를 실행합니다.
/*
* LOADScript Mod
* 매개변수 url1,url2,url3,url4,fn
*/
jQuery.extend({
loadMod: function(){
var arglen =args.length,
arglast = 인수[arglen -1],
fn = false,
queue = [],
checknum = 0,
timer = null
// init
if(jQuery .isFunction( arglast)){argleng = arglen -1;fn=arglast;}
for (var i=0;i
queue.push(arguments[i])
}
// getscript
jQuery.each(queue,function(i,o){
jQuery.getScript(o);
})
/ / 로드 준비 여부를 확인하세요.
loadReady();
function loadReady(){
if(jQuery.tools != undefine){
checknum = 0; jQuery.tools ,function(i,n){
if(jQuery.isPlainObject(n)){checknum ;}
})
}
if(checknum != arglen){
clearTimeout( 타이머);
timer = setTimeout(loadReady, 100);
}else{
if(!!fn){fn.call(document.jQuery)}
}
}
}
});
// 사용법
$.loadMod('a.js','b.js','c.js',function( ){
alert('성공!')
});