Javascript 使用ajax的并行页面加载

Javascript 使用ajax的并行页面加载,javascript,html,render,Javascript,Html,Render,假设我有一个包含四个块的页面。每个块都包含大量html代码。加载整个页面需要很多时间,尤其是在像ie8这样的旧浏览器中。我可以使用ajax请求加速页面加载吗?我的意思是发送ajax请求以获取页面的每个部分。有人告诉我,ajax请求是并行工作的,而不是单线程页面呈现,这就是为什么它将有助于减少页面加载时间。这是真的吗 javascript上的所有I/O操作都是并行运行的,您只需启动所有I/O操作并等待所有I/O操作完成,承诺(即jQuery上的延迟)就是使用设计的。例如: $.when( $.

假设我有一个包含四个块的页面。每个块都包含大量html代码。加载整个页面需要很多时间,尤其是在像ie8这样的旧浏览器中。我可以使用ajax请求加速页面加载吗?我的意思是发送ajax请求以获取页面的每个部分。有人告诉我,ajax请求是并行工作的,而不是单线程页面呈现,这就是为什么它将有助于减少页面加载时间。这是真的吗

javascript上的所有I/O操作都是并行运行的,您只需启动所有I/O操作并等待所有I/O操作完成,承诺(即jQuery上的延迟)就是使用设计的。例如:

$.when(
  $.get("/resource1"),
  $.get("/resource2"),
  $.get("/resource3")
).done(function(response1, response2, response3) {
  // do things with response1, response2 and response3;
});

更多信息:

不确定,但不要认为它是这样工作的,因为ajax在DOM加载之后加载,然后它会再次请求更多的东西。。也许某种ajax延迟加载会起作用,但速度可能会慢一些。IE8的渲染引擎,特别是在需要重新绘制(即扩展宽度表)的大型html上,速度非常慢。如果可以,请尝试在块/单元上设置硬像素宽度,因为这将提高ie8的绘制能力。您也可以使用,但不支持ie8和IE9@vico I可以在加载DOM之前启动AJAX请求,不是吗?您的页面需要等待服务器响应,加载数据,然后一次重复该过程4次以上。您可以设置一个演示来轻松测试这一点,然后查看网络日志,看看与正常负载相比,时间是否有所改善。(响应延迟可能为500毫秒到2.5秒,具体取决于服务器及其处理内容)这有助于提高页面加载速度吗?如果您使用的是ajax,页面加载涉及使用ajax请求,然后建议使用ajax请求来减少等待时间,但是使用ajax请求本身而不是让浏览器来完成这项工作并不会提高页面加载时间,事实上,我建议在可能的情况下让浏览器来完成这项工作