在发起同步Ajax请求时设置的等待图片在IE与Chrome浏览器不显示,在firefox里面正常,通过Chrome debug模式发现,它是会显示的,由于后面的计算是JQuery同步操作,需要过长时间计算,导致界面UI卡死(来不及展示)。
浏览器的渲染(UI)线程和js线程是互斥的,在执行js耗时操作时,页面渲染会被阻塞掉。当我们执行异步ajax的时候没有问题,但当设置为同步请求 时,其他的动作(ajax函数后面的代码,还有渲染线程)都会停止下来。即使DOM操作语句是在发起请求的前一句,这个同步请求也会“迅速”将UI线 程阻塞,不给它执行的时间。这就是代码失效的原因。
jQuery在1.5版本之后,引入了Deferred对象,提供的很方便的广义异步机制。
deferred对象就是jQuery的回调函数解决方案,deferred对象的含义就是"延迟"到未来某个点再执行。
$.ajax()操作完成后,如果使用的是低于1.5.0版本的jQuery,返回的是XHR对象,你没法进行链式操作;如果高于1.5.0版本,返回的是deferred对象,可以进行链式操作。
解决方法:使用JQuery Deferred对象。

var getWordCount = function(){var defer = $.Deferred();var urlStr = "postcommit.html?I_SOURCE=getxliff";$.ajax({url : urlStr,             //async : false,表示异步执行。success: function(dataStr){defer.resolve(dataStr);}});        return defer.promise();}
var myTotalprice = function(){//当getWordCount() 执行完成后,执行done()以下操作。就跟同步效果一样。$.when(getWordCount()).done(function(dataStr){alert(dataStr);});                   }

解决同步Ajax页面假死相关推荐

  1. 富文本解析 wxParse 解析数据造成页面假死

    富文本解析 wxParse 解析数据造成页面假死 问题描述 小程序中总有富文本解析的场景,比如:头条的终端页.我们的终端页使用了 wxParse, 但是由于 wxParse有些小问题,并且项目使用 m ...

  2. #mipush #解决mipush延时 #mipush假死 #解决mipush收不到信息(已注册)crond,安卓crond

    mipush,解决mipush延时mipush假死,解决mipush收不到信息(已注册) 本文只解决已注册成功的mipush收信息延时或是.... 已root,root,root,需要root,cro ...

  3. 解决Windows 8系统假死的方法

    大部分半卡死的现象是因为Dynamic Tick的一个Bug.Dynamic Tick是NT 6.2内核的一个新功能(其实Linux早就有了),原理的话大概是在空闲的时候把CPU完全暂停,来节省电量. ...

  4. Ajax同步请求出现浏览器页面假死,阻塞UI线程之解决方案

    ajax 请求数据之前,数据经过复杂处理需要一些时间,浏览器提示当前页面没响应,是否等待或者结束程序. function loadData() { //--------------------第一步 ...

  5. 大量Ajax同步请求,出现浏览器页面假死,而Loading图标卡死的情况

    最近做了一个功能,需要大量删除数据,但是只能从前台一条一条调用API删除(客户的奇怪要求). 同时在删除的过程中,我写了一个Loading的图标,用于展示删除的progress(就是删除了百分之多少的 ...

  6. 导出excel 后 页面按钮失效(页面假死)

    在 page_load 里加上如下代码: string beforeSubmitJS = "\nvar exportRequested = false; \n";    befor ...

  7. 解决xcode打开时假死的问题

    症状如下: 点击打开xcode后,就一直会看到loading,但是CPU消耗很高,基本上动弹不得,通过活动监测器看到xcode显示为"未响应" 以为是安装程序的问题,结果选中xco ...

  8. Eclipse 解决未响应、假死、Eclipse运行性能调优

    [url]http://blog.csdn.net/gtuu0123/article/details/6720253[/url]

  9. 浏览器真的能“永不假死”?——六款主流浏览器防假死功能测试

    作者:一石来源:家用电脑 浏览器是大家上网必备的工具,而浏览器假死也是大家在上网时常常所遇到的问题,让人头疼.最近各款主流浏览器纷纷推出了最新版本,我们可以发现一个相同点就是他们都以"防假死 ...

最新文章

  1. 找到二叉树中的最大搜索二叉子树
  2. jQuery lazyload 懒加载
  3. 飞畅 8口RS-485集线器产品性能参数介绍
  4. python连接数据库mysql错误1045_django 连接数据库出现1045错误的解决方式
  5. Spring,ehcache整合报错
  6. LabVIEW: 无法执行该VI。
  7. 主程序与子程序不在同一程序模块中_数控车床子程序M98、M99编程实例!
  8. 官宣了!受疫情影响,程序员可免费领这些!
  9. 微信公众号开发 ----微信网页开发config接口注入(3)
  10. 微信小程序云开发教程-微信小程序的JS基础-js文件基本结构与生命周期
  11. java checked异常有那些_JAVA 的checked异常和unchecked异常
  12. 学习WPF/Silverligter网站及资源
  13. Unix编程艺术-翻译-开篇
  14. Ubuntu16.04中安装stlink驱动
  15. 差分 线宽 线距_线宽、线距规则设置到底怎样最合适?
  16. 支撑向量机作业(SVM)
  17. 【错误记录】Android 编译报错 ( Installed Build Tools revision 31.0.0 is corrupted. Remove and install again )
  18. matlab中abs函数,matlababs是什么意思 是是是什么意思
  19. Terraria泰拉瑞亚服务器搭建
  20. java es nested,Nested

热门文章

  1. :nth-child(n)使用记录排行榜前三名头像皇冠展示
  2. 新一代互联网技术——可信网络
  3. 大数据时代智慧健康养老发展趋势
  4. 申请苹果公司版和企业版开发者账号注意事项
  5. 机器学习算法K近邻--阿里云天池
  6. iOS App如何在爱思助手应用市场上架?(申请iOS App上线爱思助手应用市场)
  7. 钢笔工具的理解和使用
  8. 计算机科学双一流大,不是“双一流”却拥有A类学科的高校,附选专业攻略!...
  9. 美国知名投行摩根大通警告,史上最大的美股泡沫或在明年破灭
  10. 华为天才少年自制百大Up奖杯,网友:技术难度不高,侮辱性极强