如何确定我的脚本中阻止HTML呈现的内容?

时间:2010-04-08 14:19:21

标签: javascript html rendering blocking

我有一个使用相当多JavaScript的Web应用程序。

当页面加载时,视觉上非常清楚某些东西阻止了网站特定部分的呈现。此部分由Tabber Tabify JavaScript库生成。

如何确定具体阻止HTML呈现的内容,以便我可以修改代码以防止此阻止?

我是否可以使用Firebug或其他工具来浏览我的HTML / JavaScript以确定HTML呈现的阻止位置,如果是,如何?

更新

YSlow为我的网络应用程序提供“A”分数,而Page Speed给出的分数为94/100。

更新2:

现场网站链接如下。

http://www.elite.com

我特别提到的是实际的标签本身正在呈现(而不是标签窗格内的面板内容)。对我来说,Tab标题本身在第一个(空缓存)页面加载时生成这么长时间似乎很奇怪。

1 个答案:

答案 0 :(得分:0)

一些可能性:

  1. 在页面中加载脚本将阻止渲染(唯一的解决方法是将它们置于头部(阻止初始渲染)或在</body>之前的末尾或在页面之后加载它们加载(例如onload)

  2. 无论Tabber / Tabify工具是什么,都需要时间处理内容......看看是否有办法优化它。

  3. 无论哪种方式,如果您发布一些代码,我们可能会提供更多帮助

    <强>更新

    如果我加载清除缓存的页面,我会在屏幕上看到内容呈现,然后隐藏(因为它变成隐藏的标签内容)

    加载时将不可见内容更改为display:none;,然后仅在完成Tabify内容后将其设置回display:block;可能会有助于(a)加快渲染速度并(b)删除任何后来被隐藏的内容。

    RadComboBox你有加载内联(这意味着脚本阻止渲染)...如果你可以延迟这个直到onload事件触发它将加速渲染。

    我也会将Unica页面标记(跟踪)移动到页面的末尾。

    您有8个外部脚本文件 - 如果有任何方法可以将它们组合起来,那就太好了。

    您没有为大多数脚本文件启用gzip

    所有静态内容(图片,css,脚本)都没有过期标头,这意味着它们不会被缓存,这意味着页面将无法在第一页后快速加载。