使用延迟加载会使我的网页显得更快

时间:2014-11-27 20:14:52

标签: javascript html css performance web

我正在创建一个网页,其中包含120个项目(图像+描述+链接),每个项目都以固定大小的div显示。

如果我在HTML中只包含30个项目,将空白(固定大小的div)替换为其他90个,并在用户向下滚动页面时加载其他div的内容,页面会更快地呈现吗?

我认为这种延迟加载的可能优势可能是:

  • HTML文件小于原始大小的50%(但是,这可能不会影响加载速度,因为我希望浏览器在加载后立即显示最顶层的元素)

  • 前30张图片加载速度较快,因为它们不与其他图片竞争。

这些假设是否有效?页面渲染速度会更快吗?还有什么相关的? (例如,最初的DOM元素较少,JavaScript开销较小等)

2 个答案:

答案 0 :(得分:1)

嗯,是的,不是......

由于文档尺寸较小,页面可能会稍早开始渲染,渲染页面的时间可能会略短,因为元素较少,但这些元素都不可能是明显的。

由于页面上的图像较少,图像的加载速度不会更快。来自同一主机的同时加载数量仍然比您计划最初加载的30个图像低很多。图像通常会从顶部开始加载,因此对于顶部图像,您不会注意到任何页面下方丢失图像的任何差异。

相关的是浏览器在开始呈现实际页面之前必须加载和运行多少。例如,在浏览器可以呈现任何内容之前,必须加载并运行在页面头部加载的任何Javascript文件。

答案 1 :(得分:0)

我会说这个页面会更快地渲染,并且感觉更快。

但是你可以尝试其他的东西:

  • 我认为您已经开始优化图像了吗?
  • 如果有以前的'在此页面中,您可以在后台预加载图像,以便在用户访问此页面时缓存它们?
  • 也许您可以将所有图片合并为一张大图片(单个http请求),并使用CSS分别剪切/定位它们