我正在使用getScript()
JQuery方法,但实际上可以添加超时。有些脚本没有恢复为6-8秒的失败,这太长了。
这可能吗?
我搜索了一下,没有解决方案。
类似的东西:
$.getScript(a + "/myspeed/MySpeedServer/mss/js")
.done(function() {
//do stuff
})
.fail(function() {
//do stuff
});
.timeout(2000)
答案 0 :(得分:5)
$.getScript
只是$.ajax()
的封套。因此,您可以将$.ajax()
与timeout
选项一起使用,如下所示。
$.ajax({
url: url,
dataType: "script",
timeout: 2 * 1000
}).done(function() {
//do stuff
})
.fail(function() {
//do stuff
});
the doc的注释:仅在Firefox 3.0+中,超时无法取消脚本和JSONP请求;即使在超时时间之后到达,脚本也会运行。
您也可以将abort()
方法用作stated here。
答案 1 :(得分:0)
由于getScript
不接受超时选项。
您可以使用ajaxSetup
方法设置全局超时。
如果全局超时不适用,您可以使用
$.get({
url: a + "/myspeed/MySpeedServer/mss/js",
timeout: 5000, // 5 seconds
dataType: "script"
});