0

我目前正在使用一个轻量级的 javascript 库来进行 ajax 调用。图书馆是'jx'。

它工作正常。但是我想添加一个超时,以便在一段时间后没有响应时停止 ajax 调用。我环顾四周,似乎没有像jquery那样的超时参数......

由于纯javascript,有没有办法实现超时?像这样 :

timer = setTimeout('function{stop the call}', 20000);
jx.load(url, function(data){ 
        // get the data
        clearTimeout(timer);
        }

我试过了,但效果不好……还有其他方法吗?或者让ajax调用syn

4

1 回答 1

2

如果是您正在使用的库,它似乎是可能的:

var xhr = jx.init();
var timer = setTimeout(function(){ 
    if(xhr && xhr.abort) xhr.abort();
}, 20000);

jx.load(url, function(data){ 
    clearTimeout(timer);
});
于 2012-08-28T18:07:31.247 回答