我在使用缓慢执行jQuery $.ajax
的一些网站上遇到了困难。
我不谈论服务器需要很长时间才能做出回应。我说的是$.ajax
函数的实际执行需要很长时间。
正常(快速)示例
转到jQuery.org并运行以下代码需要 3ms :
var start = (new Date()).getTime();
$.get("https://jquery.org/projects/")
var end = (new Date()).getTime();
console.log("executed in " + (end - start) + "ms")
错误(慢)示例
但是,在我正在处理的demo website上运行非常相似的代码需要 324ms :
var start = (new Date()).getTime();
$.get("http://sauce-demo.myshopify.com/collections/frontpage/products/bronze-sandals")
var end = (new Date()).getTime();
console.log("executed in " + (end - start) + "ms")
现在显然来自$.ajax
(因此$.get
)的响应将是异步的。但是什么可能导致执行时间大幅增加?
由于
答案 0 :(得分:2)
感谢所有精彩的评论家伙。你是绝对正确的 - 看起来有一个全局async: false
设置嵌套在一个JavaScript文件中:
jQuery.ajaxSetup({
async: false
});
我不知道jQuery有一个全局异步设置。