我正在尝试改善用户对某些网页的页面加载时间的感知。这些网页大约需要5秒钟才能完成加载和渲染。整体时间很好;但是在单击链接以加载页面时,大约4.5秒没有任何反应,然后整个页面出现在一个镜头中。这会破坏用户体验,因为用户在点击链接后会想知道是否发生了任何事情。
据我所知,浏览器应该在可用于呈现页面部分的资源可用时逐步呈现网页。我推荐的一件事(YSlow为例如:)是把css放在头部和javascript靠近结束体标记 - 或者尽可能靠近页面末尾。我已经完成了这个,但我没有看到页面渲染的初始部分,然后暂停加载javascript。据我所知,理论是,一旦加载了所有CSS,页面就会逐渐开始渲染。我也明白,当执行/下载任何javascript时,页面将暂停渲染。
还有什么可以影响IE上的渐进式渲染,特别是在IE7上?
答案 0 :(得分:1)
我发现javascript(特别是一些jQuery选择器)会减慢速度并阻止页面呈现。我们首先通过删除一些重复选择相同元素的代码来优化jQuery代码。然后将代码下移到$ .ready,以便在页面加载后执行。 总的来说,这使我们的页面加载时间增加了2秒,并允许更多页面逐步加载。
答案 1 :(得分:0)
第一步可能是要了解网络端发生了什么,Fiddler之类的工具会对您有所帮助。在您的情况下,Timeline display应该是一个很好的起点。
答案 2 :(得分:0)
检查未关闭的标签。
检查所有图像是否具有宽度和高度属性。
答案 3 :(得分:0)
为什么在点击页面当前处于加载状态的链接时不向用户显示通知。
你可以这样做:
window.onbeforeunload = function(e){ document.body.innerHTML='loading...';/*or even a better content/* };
答案 4 :(得分:0)
由于页面上的Flash视频,我遇到了相同的负载问题。有人会告诉我为什么我的上帝为什么不能像火狐一样加载页面???
如果ie今天停业,我浪费的所有时间和日日夜都会结束。
我认为这是时候了,即在2009年满足网络maasters的需求并改变他们加载页面的方式。
如果使用java脚本,没有java的人会看到空格。