注意jQuery中的ajax 设置async为false出现问题

注意jQuery中的ajax 设置async为false出现问题

1179发表于2017-04-23

有时候我们想让一个ajax请求返回完毕之后再继续下面的js代码,最简单的方法就是把async设置成false(默认是true异步的)。但是就今天遇到一个奇怪的问题。要做一个loading效果如下图:

但是,把async设置成false菊花总是出不来,后来把这个属性设置去掉才出来。

问题分析:

async设置成false是表示请求是同步的,也就是要等待服务器返回结束之后才能继续下面的脚本,这时可能会出现浏览器器假死。假死也就是页面dom渲染可能会被阻塞,页面得不到更新。所以导致菊花没有出来就是浏览器被锁死了。

ps:在短时间内要发送多个ajax请求时,最好是不要设置timeout,不然要返回canceled status。



小编蓝狐