Facebook SDK与Javascript失败,不知道为什么

时间:2014-06-17 01:02:49

标签: javascript facebook facebook-javascript-sdk

这是我的简单html:

fb_driver.html

<!DOCTYPE html>
<html>
  <head>
    <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
    <meta content="utf-8" http-equiv="encoding">
    <title>Facebook Driver</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <link rel="stylesheet" type="text/css" href="fb_driver.css">
  </head>
  <body>
    <script>
      window.fbAsyncInit = function() {
        alert("why can i not see this?");
        FB.init({
          appId: 'my-app-id',
          xfbml: true,
          version: 'v2.0'
        });
        FB.ui({
          method: 'feed',
          name: 'The Facebook SDK for Javascript'
        });
        alert("hi");
      };

      (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'));
      alert("hello");
    </script>
    <div id="fb-something" class="fb-like" data-send="true" data-width="450" data-show-faces="true">
    </div>
  </body>
</html>

它基本上是直接从https://developers.facebook.com/docs/javascript/quickstart/v2.0复制的。脚本末尾的“hello”警告显示,但“为什么我看不到这个?”并且“hi”没有(它们在window.fbAsyncInit = function(){...}内)。 “为什么我看不到这个?”字面上是fbAsyncInit块中的第一个东西,但仍然无法显示。有人可以帮我解释为什么这不起作用吗?

我能想到的一件事是,即使上面的链接说没有什么需要导入或下载,只需要定期的javascript,也许早期的指令中有些东西我错过了。

1 个答案:

答案 0 :(得分:-1)

最后是'connect.facebook.net/en_US/sdk.js'之前的'//'不适合在本地打开html文件(这就是我正在做的只是为了正确的玩法现在)。我添加了'http:',因此它显示为'http://connect.facebook.net/en_US/sdk.js',这让我遇到了另一个错误,这就是进展。