1

我想尽可能延迟在我的网页上显示 facebook like 按钮,原因有很多,主要是因为我希望我的页面尽快下载。

在 facebook 页面上它说:在您的页面上包含一次 JavaScript SDK,最好是在开始的 body标记之后。

所以,我在body标签之后添加了以下代码

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

然后,我决定把那个确切的代码放在最后,看起来一切都一样。

我的问题是为什么 Facebook 建议将 javascript SDK 理想地放在开始正文标记之后,如果似乎没有任何后果将它放在最后?

可以把代码放在最后吗?有什么我不知道的吗?

4

1 回答 1

1

你可以把它放在任何地方,只要它在</body>标签之前。我自己在页面末尾使用它没有任何问题,但正如 Facebook 官方文档所说,在某些情况下可能会有一些副作用

将此代码直接放在开始标记之后时效果最佳。

看看这个答案

你把它放在哪里并不重要,只要它在</body>标签之前。将其添加到页面顶部(<body>确保 SDK 已下载并且可用于页面,以防页面下方的任何 javascript 尝试直接访问 FB 对象。

<div id="fb-root"></div>需要在<script>...</script>标签放置的任何位置上方,以便 SDK 可以找到该 div 以向其添加资源。

于 2013-08-02T05:12:15.573 回答