本文介绍: Ajax同步调用影响加载动画展示问题
问题描述:
在做录入文章到时候,由于外部图片权限问题,在app展示的时候无法访问,所以需要在文章提交的时候做一下图片处理,这里使用ajax同步上传到服务器 返回url替换掉 原来的img的src;问题出现在点提交的时候页面卡死 遮罩层和加载图显示不出来;
解决方案:
浏览器的渲染(UI)线程和js线程是互斥的,在执行js耗时操作时,页面渲染会被阻塞掉。当我们执行异步ajax的时候没有问题,但当设置为同步请求时,其他的动作(ajax函数后面的代码,还有渲染线程)都会停止下来。即使我的DOM操作语句是在发起请求的前一句,这个同步请求也会“迅速”将UI线程阻塞,不给它执行的时间。这就是代码失效的原因。
修改前代码示例:
修改后代码示例:
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。