延迟加载HTML标记

时间:2011-04-15 10:52:45

标签: javascript html performance lazy-loading

我的组织是一家电子商务公司,有多个页面显示一长串产品,一些页面可以有20个产品,而其他页面可能有多达100个产品! - 别问我原因!

我的任务是改善这些页面的加载时间,分析显示大部分加载时间来自标记 - 它太多了!!由于业务必须显示的信息量,标记不能真正减少。

这使我看到了备选方案,当用户向下滚动屏幕时,会产生延迟加载产品标记(我们目前将此技术用于产品图片)。

有没有人有过做他们可以分享的事情的经验? - 担心这会影响页面内的表现

也可以听取任何替代方法

期待任何意见

3 个答案:

答案 0 :(得分:1)

你可以dynamically load content while scrolling

您可以在准系统HTML中加载所有关键数据,然后使用Javascript添加必要的标记。

或者,如果客户端接受它,您可以发送一个紧凑的XML文档并在客户端应用XSLT转换(请参阅'Accept:'标题)。

答案 1 :(得分:0)

要注意的一件事是将压缩添加到浏览器发送的内容中。这将大大减少页面有效负载。

正如其他人所提到的,加载页面内容可能会导致许多问题,特别是对于具有可访问性需求的用户(这比大多数人想象的要大得多)

答案 2 :(得分:0)

我使用以下方法隐藏化妆时间来渲染/创建内容(android,jq和jq-mobile)

a)内容在后台生成。始终创建小块(持续时间20-30ms)并插入dom。在大约50ms(setTimeout)之后,创建下一个片段并将其插入到dom

中 b)特定于Android:我注意到DOM元素的第一个选择(例如$('#xyz'))需要相对较长的时间(大约10ms)。如果第二次访问该元素,则只需1ms(Samsung S3)。 希望这有帮助