如何解决低版本jquery的ajax同步导致loading效果卡住的问题?
jquery1.3版本中发起ajax同步请求,由于操作比较耗时,所以发起请求前加上了loding效果,但是发现loding效果直接卡住(loading里的gif动画直接卡住无动画效果),感觉像浏览器假死,代码如下:
loading("正在请求,请稍后..."); //弹出层,有等待效果gif
$.ajax({
url: test.jsp,
data: sendData,
type:"POST",
async:false,
dataType:"html",
success: function(data){
//...
unloading();//退出loading
},
error:function(data){
//...
unloading();//退出loading
}
});
网上找了使用settimeout的方法,动画效果依然是卡住,说是js的GUI线程被阻断导致的。至于$.Deferred();在jQuery1.3种不支持,除了升级jQuery之外有什么解决办法么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
async:false, // 这里表示使用同步的方式执行,如果要异步的方式,去掉这一行或则改为 async: true,
success 前加一个 complete ,里面加一个loading 退出的效果!