微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当ajax发布工作时,页面冻结了几秒钟

当我使用 jquery的$.post ajax函数时,页面冻结2-3秒然后收到数据.冻结时间可以根据收到的数据而变化.

我该如何防止这种情况?

编辑:

我正在使用CODE,它实际上收到非常大的数据

$.post("../ajax_updates.PHP",{  time: last_update },function(data) { 
   if (data) {
   if (data != "") {
    $("#news_Feed").prepend($(data).fadeIn('slow'));
    }
    }
    });

解决方法

如果您通过JavaScript加载大量数据这是正常的,问题是由于您的请求是同步的,这将使您的浏览器在执行任何其他操作之前等待此请求结束.
您需要使您的请求异步

附:在某些情况下,使用$.get而不是$.post从服务器获取信息 – 特别是如果您在Windows IIS下编码工作,您将收到相关错误.

P.S-1.有意义的是,$.get用于从服务器获取数据,$.post用于发送数据.

试试这个:

$.ajaxSetup({
    async: true
});

$.get("../ajax_updates.PHP",function(data) { 
  if (data && data != "") {
    $("#news_Feed").prepend($(data).fadeIn('slow'));
  }
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐