.getScript()回调用于多种用途
.getScript() callback for multiple usage
如果我有两个JS文件,如a.js
和b.js
a.js
$.getScript('some.js',function(){
//Call some function in some.js
});
在文件b.js中,我将调用函数somesome.js,但如何知道萨默.js 我能做点什么吗。。(在b.js中(SomejsIsLoaded.then(function(){
//Call some function in some.js
});
.then()
.promise()
?
$.getScript()
返回一个jqXHR promise,该promise可以分配给以后使用。
你可以写。。。
var somejsPromise = $.getScript('some.js', function() {
//Call some function in some.js
});
但是最好不要使用全局名称空间,所以可以使用jQuery名称空间:
$.somejsPromise = $.getScript('some.js', function() {
//Call some function in some.js
});
如果脚本"some.js"没有加载,您还应该包括一些错误处理。至少,记录错误:
$.somejsPromise = $.getScript('some.js', function() {
//Call some function in some.js
}).then(null, function(error) {
console.log('getScript(some.js)', error);
});
此后,运行在"some.js"中交付的脚本的唯一安全方法是使用指定promise的.then()
方法:
$.somejsPromise.then(function() {
//Call some function in some.js
}, function() {
//handle the case that some.js fails to load.
});
如果some.js已经加载,回调将立即运行。
如果some.js尚未加载,则回调将排队,并在some.js加载时运行。
如果some.js已经失败(或将要失败(,那么错误处理程序将运行。
您可以通过检查some.js
中的函数是否存在来检查some.js
是否存在
if (typeof sumefunction!= 'undefined') {
//your code
}
更新:你应该把这张支票放在。DOM
的ready()
函数,如果此检查无效,则可以在准备好的函数中手动加载脚本
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = your script location;
head.appendChild(script);
或者您可以继续使用getScript()
或使用jQuery.load((函数作为
$('script').load(function () { });
相关文章:
- 用于回调的javascript参数
- 用于在ng映射中加载GeoJSON的回调
- 我的插件不适用于不同的回调
- Google Maps JavaScript API v3:getDetails(请求,回调),用于多个位置
- Javascript使用本地存储,回调对象并用Json更改为一个字符串以用于填充函数
- Angular,设置一个回调函数,用于在工厂和控制器之间更新
- 用于Javascript的Skydrive API中的回调URL
- Ajax成功回调仅适用于Chrome
- Javascript:setTimeout,用于循环和回调函数
- CollectionFS中是否存在用于文件下载的事件侦听器/回调
- 将 this 应用于 jQuery 回调
- 用于循环回调问题的 Nodej
- 主干.js路由器回调,用于在除 1 个特定 URL 段之外的所有 URL 段上触发
- .off 不适用于回调
- 用于从 GeoServer 检索图层名称的 AJAX 回调失败,并显示断言错误
- jQM 自动完成如何获取用于回调的值
- 如何进行仅将 jQuery 用于回调的老式 HTML 表单提交
- 加载多个图像时用于回调的跨浏览器解决方案
- $interval不能用于回调函数,angular js
- 如何使用$.When用于回调函数