将Iframe用于服务器上的另一个文件会使当前页面加载比直接在页面上加载更快吗


Will using an Iframe for another file on your server make the current page loading faster than just loading it directly on the page?

所以我有一个网页index.php,它用Facebook提供的嵌入式post方法拉入一篇Facebook帖子。问题是,加载这些内容需要花费大量的时间。我的想法是将嵌入的facebook帖子加载到另一个页面上,比如post.php,然后将内容本身加载到页面上。然后将它加载到我想使用的页面上,使用IFrame,如下所示:

<iframe class="fb-content-frame" width="350" height="550" scrolling="no" seamless="seamless" frameborder="0" src="http://mywebsite.com/test/post.php" allowfullscreen></iframe>

所以现在我的问题是:

使用这种方法会提高主页(index.php(的加载时间吗?然后只在页面上加载Facebook内容?

如果我没有弄错,那么<iframe>应该像对待CSS、JS和图像文件等资产一样对待。

需要注意的问题是,web浏览器通常对并发下载有限制,因此,如果您的主页有10个图像,其中5个在<iframe>上方,5个在其下方,那么如果<iframe>有50个图像要加载,则<iframe>可能会延迟其他图像。

然而,如果你的<iframe>只是永久的,那么我认为剩下的5个图像加载应该没有问题。

通过AJAX加载这些内容可以更优雅地解决这个问题,因为您将拥有更精细的控制。

根据我的经验,它实际上会第一次减慢加载时间,因为它必须加载iframe,然后加载其中的内容。当你想重新加载iframe内的内容,但不想重新加载布局时,速度会增加,在这种情况下,加载速度会更快,因为页面一次加载的次数更少。