Javascript Do<;iframes>;以及通过AJAX延迟窗口加载的图像。是否加载?

Javascript Do<;iframes>;以及通过AJAX延迟窗口加载的图像。是否加载?,javascript,dom,onload,Javascript,Dom,Onload,我正试图让window.onload事件触发得更快,这样谷歌就会认为我的页面加载得更快(这是一项令人沮丧的任务,因为从用户角度看,需要多长时间才能到达window.onload基本上是不相关的,但我离题了) 但是,我不知道是什么延迟了onload事件!具体而言: 如果我在页面上加载类似Facebook的邮箱,它的加载是否会延迟onload事件?如果likebox iframe必须加载一组配置文件图片,该怎么办;onload是否要等到它们完全加载 假设在documentready上,我对一个HTM

我正试图让window.onload事件触发得更快,这样谷歌就会认为我的页面加载得更快(这是一项令人沮丧的任务,因为从用户角度看,需要多长时间才能到达window.onload基本上是不相关的,但我离题了)

但是,我不知道是什么延迟了onload事件!具体而言:

  • 如果我在
    页面上加载类似Facebook的邮箱,它的加载是否会延迟onload事件?如果likebox iframe必须加载一组配置文件图片,该怎么办;onload是否要等到它们完全加载
  • 假设在documentready上,我对一个HTML blob执行一个异步AJAX请求,并将其注入页面。如果这个HTML blob包含一堆
    标记,onload事件是否会等待所有这些标记加载
  • 通常,浏览器如何知道何时触发onload事件?什么样的东西会阻止onload,什么样的东西不会阻止onload?

    a)你不能控制
    窗口。onload
    除非通过减少页面“重量”。由浏览器决定何时声明该事件

    b) 谷歌对
    window.onload
    事件一无所知,因为它没有解析JavaScript

    1) 通过使用XFBML版本的like按钮和异步加载Facebook JavaScript SDK(),可以完全消除Facebook负载。请注意,只有启用了JavaScript,它才能工作


    2) 所有将显著增加网页重量的内容都应该异步连续加载,最好在
    窗口。onload
    事件触发后加载。

    如果查看瀑布,在firebug或chrome inspector中,iframe和ajax调用确实会影响onload事件。我遇到了类似的问题,facebook大大减慢了网站的速度。是的,当在网站管理员工具中查看页面加载时间时,它显示了延迟

    我的解决方案是在页面完全加载时动态附加facebook iframe。对于ajax调用,我只在加载时触发它们


    这使我的页面加载时间从嵌入facebook iframe的7秒增加到动态添加它的2.6秒。

    如果你看一下webmastertool,谷歌确实查看了这些数据,那么你的页面完全呈现需要多少时间。这包括javascript调用。谷歌在确定页面加载时间时肯定会解析javascript(爬虫可能不会,但我不是说爬虫)。查看网站管理员Tools@Ibu,Horace Loeb阅读和解析JavaScript代码之间存在巨大差异。除了能够简单地跟踪JavaScript嵌入链接和编写一些真正基本的JavaScript代码之外,Google无法解析(理解)JavaScript。因此它无法理解window.onload。它可以假设一个页面完全加载需要多长时间。@holodoc:在这种情况下,我们不是在说爬虫。谷歌不会假设页面加载时间,它会像其他浏览器一样打开你的页面并检查加载时间。我认为您的解决方案非常好,使用facebook脚本而不是iframe。您如何从瀑布图中判断哪些项目阻止了加载?一些在onload之前启动的请求不会被阻止。例如,在google chrome上,您可以查看垂直红线前的最后一项。看看它有多长,或者什么时候开始。最后一个在红线前开始的项目是什么?还是最后一个在红线之前结束的项目?那将在红线之前