$ .ajax async:false在IE和Firefox中不起作用,适用于Chrome / Safari

时间:2013-01-21 10:22:00

标签: javascript ajax jquery asynchronous

我正在尝试使用ajax调用来测量下载速度。 这是我的代码

var start = new Date();
$.ajax ({
    url: 'https://www.example.com/perftest/dummyFile1024',
    cache: false,  
    success : function() {
        var total = (new Date() - start)
        alert(total)    
    },
    error : function(jqxhr, status, ex) {}
})

它不会等到整个文件加载。当我添加async: false,时,它等待加载整个文件,我能够测量chrome和safari的带宽,但是Internet Explorer和firefox的工作方式与async: true,相同,他们不会等到整个文件加载完毕。你知道如何管理它适用于I.E.和firefox一样?感谢。

1 个答案:

答案 0 :(得分:3)

IE 8/9跨域请求要求jQuery使用不同的传输方法,该方法使用XDomainRequest而不是默认的XmlHttpRequest。

我相信这个问题已在此处得到解答:[问题]:CORS with jQuery and XDomainRequest in IE8/9

对于FireFox,请尝试设置$ .ajax请求返回的内容的“dataType”。