【问题标题】:How many javascript link I can have in Facebook?我可以在 Facebook 中拥有多少个 javascript 链接?
【发布时间】:2010-03-09 00:13:21
【问题描述】:

我可以在facebook中包含()多少个js文件有限制吗?我包括5个文件。没问题..第6个没有加载。然后我必须将第 6 个中的代码放入第 5 个文件中。然后工作。那么,最多 5 个文件吗?

顺便说一句,我现在正在开发应用程序,而不是在生产中。所以它不在压缩JS/最小化它的阶段。 :)

所以丢失 js 文件或文件未加载..etc 有点烦人

那么,FB的限制是什么?文件大小限制是多少?我知道 JSON 请求回调数据限制是 5000 .. 但不确定 js 包含。

【问题讨论】:

  • Facebook 根本不加载文件听起来很奇怪。你确认了吗?

标签: javascript facebook include hyperlink


【解决方案1】:

是的,Facebook 不应该在 IFrame 应用程序中做任何事情。好的,即使对于 FBML 应用程序,也有一些事情可能会导致问题:

  1. 脚本标签必须以单独的结束标签结束,它们不像链接标签那样工作。

  2. 某些浏览器(例如 IE)限制了页面中包含的链接标签的总数(IE 链接标签的限制似乎为 31)。我不确定脚本标签的数量是否也有类似的硬性限制,但我也会检查一下。在网上搜索,没有任何结果。

  3. 在加载和运行 javascript 文件时,从该域下载的所有其他并行文件都被禁用,因此请确保您包含的某些 javascript 文件不会阻止其他文件的下载。

    李>
  4. 此外,只有两个六个文件从一个域并行下载,作为额外的预防措施,在任何给定时间只下载一个 javascript 文件。因此,请确保您没有占用管道的过大 js 文件/无法访问的 js 文件。

  5. 要绕过第 5 点,您可以动态编写 js 文件下载脚本,因为 2-6 次并行下载的硬性限制仅适用于 HTML 脚本文件。因此使用 javascript 加载额外文件会增加可能发生的并行下载次数。

根据我的经验,我只是将所有 30 个或奇数文件连接成 3 个文件,并将这 3 个文件包含在生产环境中,并继续使用单个文件进行开发。

在我看来,Facebook 以某种方式超时并尝试重新加载早期的页面,当时下载某些 js 文件的网络延迟很高(虽然无法证明这一理论)。

【讨论】:

    【解决方案2】:

    从用户的角度来看,你应该加载as few as possible,而不是想看看你能推多少。更多独立文件意味着客户端的 HTTP 请求更多,这意味着页面加载速度更慢。

    另外,在投入生产之前我会minify your script,更少的字节也意味着更快的页面。

    【讨论】:

    • 同意,为应用程序执行脚本的 join+minify 可能是个好主意。
    • 我知道。但现在,我只是在做开发。不在生产阶段。文件未加载时有点烦人。
    【解决方案3】:

    我在开发环境中加载了 29 个脚本,最近我开始看到文件未加载等问题。

    但是,如果您正在编写基于 iframe 的应用程序,那么我无法解释为什么/如何 facebook 将限制加载的 JS 文件的数量。但请检查网络延迟,因为连接速度非常慢时,facebook 可能会尝试重新加载整个页面并在此过程中重新获取所有静态资产,除非它们是可缓存的。

    浏览器缓存也可能是一个因素。 Firefox 3.6 进行了非常激进的缓存,坦率地说,它比其他任何东西都有更多的故障。因此,请检查您的不完整的 js 文件是否已被浏览器缓存。

    【讨论】:

    • 在 iframe 应用程序中,Facebook 无法控制任何东西,对吧?这是你自己的个人框架。
    猜你喜欢
    • 2020-03-06
    • 1970-01-01
    • 2016-10-31
    • 2013-09-23
    • 2016-10-23
    • 2012-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多