Facebook Javascript SDK,如何知道何时加载了异步脚本?

时间:2017-04-19 17:51:21

标签: javascript facebook asynchronous facebook-javascript-sdk

我确实包含了像这样的facebook片段

<div id="fb-root"></div>
<script>
  window.fbAsyncInit = function() {
      FB.init({
          appId      : 'someAppId',
          cookie     : true,
          xfbml      : true,
          version    : 'v2.8'
      });
  };

  (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/sdk.js";
      fjs.parentNode.insertBefore(js, fjs);
  }(document, 'script', 'facebook-jssdk'));
</script>

然后,在我的代码的某处,我会做类似

的事情
FB.foo.bar();

我怎么知道脚本何时加载,因此FB对象确实存在?

1 个答案:

答案 0 :(得分:0)

这就是window.fbAsyncInit的用途,当您点击该回调函数时会加载JavaScript SDK。您可以在FB.init之后立即使用FB。