Javascript 如何将回调分配给变量
我在玩javascript、加载文件和回调 我目前正在使用此代码Javascript 如何将回调分配给变量,javascript,dynamic,callback,load,Javascript,Dynamic,Callback,Load,我在玩javascript、加载文件和回调 我目前正在使用此代码 var test_two = {}; (function(pub) { var self = this; pub.loadScript = function(url, callback){ var script = document.createElement("script") script.type = "text/javascript"; script
var test_two = {};
(function(pub) {
var self = this;
pub.loadScript = function(url, callback){
var script = document.createElement("script")
script.type = "text/javascript";
script.src = url+'.js';
if (script.readyState){ //IE
script.onreadystatechange = function(){
if (script.readyState == "loaded" ||
script.readyState == "complete"){
script.onreadystatechange = null;
callback();
}
};
} else { //Others
script.onload = function(){
callback();
};
}
console.log('Callback '+callback);
self[url] = callback;
document.getElementsByTagName("head")[0].appendChild(script);
}
})(test_two);
如果我像这样使用它,它确实有效
test_two.loadScript('loadIt', function(){
//code here
});
现在我想要的是能够做一些像
loaded_script = test_two.loadScript('loadIt');
或
并使用“loaded_script”引用加载的脚本(变量和方法)
我已尝试自动将其添加到名称空间中,如您所见
self[url] = callback;
但这是一个未定义的问题
您可以看到这是通过RequireJS完成的
现在,在你告诉我搜索之前,我已经搜索了一整天,没有任何答案给我我需要的东西,我不想使用RequireJS或jQuery,因为我正在尝试学习类似的东西是如何工作的,而不仅仅是开始使用代码
是否有任何页面可以帮助我真正完成我想要的,或者有人可以帮助我吗?非常确定
这个是窗口
那里…不,我不希望它分配给窗口。我想把它添加到test_-two名称空间中。好吧,因为除了elclanrs(谢谢你的尝试)之外,没有人能帮上忙,所以我将忽略这个。谢谢你的关注,什么也没做。现在看来,一天的帮助实在太难了。即使是已经做过的事情。不用谢
self[url] = callback;