Javascript 向getScript()添加超时
我使用的是Javascript 向getScript()添加超时,javascript,jquery,ajax,timeout,getscript,Javascript,Jquery,Ajax,Timeout,Getscript,我使用的是getScript()JQuery方法,但实际上可以添加一个超时。有些脚本在6-8秒内不会返回失败状态,这太长了 这可能吗 我搜索了一下,没有找到解决方案 比如: $.getScript(a + "/myspeed/MySpeedServer/mss/js") .done(function() { //do stuff }) .fail(function() { //do stuff
getScript()
JQuery方法,但实际上可以添加一个超时。有些脚本在6-8秒内不会返回失败状态,这太长了
这可能吗
我搜索了一下,没有找到解决方案
比如:
$.getScript(a + "/myspeed/MySpeedServer/mss/js")
.done(function() {
//do stuff
})
.fail(function() {
//do stuff
});
.timeout(2000)
$.getScript
只是$.ajax()
的包装器。因此,您可以使用$.ajax()
和超时
选项,如下所示
$.ajax({
url: url,
dataType: "script",
timeout: 2 * 1000
}).done(function() {
//do stuff
})
.fail(function() {
//do stuff
});
注意:仅在Firefox3.0+中,脚本和JSONP请求不能通过超时取消;脚本将运行,即使它在超时时间之后到达
您也可以使用
abort()
方法作为。$。getScript
只是$.ajax()的包装。因此,您可以使用$.ajax()
和超时
选项,如下所示
$.ajax({
url: url,
dataType: "script",
timeout: 2 * 1000
}).done(function() {
//do stuff
})
.fail(function() {
//do stuff
});
注意:仅在Firefox3.0+中,脚本和JSONP请求不能通过超时取消;脚本将运行,即使它在超时时间之后到达
由于getScript
不接受超时选项,您也可以使用abort()
方法作为。。
您可以使用ajaxSetup
方法设置全局超时
如果全局超时不适用,可以使用
$.get({
url: a + "/myspeed/MySpeedServer/mss/js",
timeout: 5000, // 5 seconds
dataType: "script"
});
因为getScript
不接受超时选项。
您可以使用ajaxSetup
方法设置全局超时
如果全局超时不适用,可以使用
$.get({
url: a + "/myspeed/MySpeedServer/mss/js",
timeout: 5000, // 5 seconds
dataType: "script"
});
注意,文档中有关于并非所有浏览器都会遵守脚本的timeout
的警告注意,文档中有关于并非所有浏览器都会遵守脚本的timeout
的警告