试图在我的网站上添加像按钮一样的facebook

时间:2012-01-12 02:10:53

标签: javascript facebook

下面的脚本将下载facebook sdk以生成代码以创建类似按钮

  (function() {
            var scrFaceBook = document.createElement('script');
            scrFaceBook.type = 'text/javascript';
            scrFaceBook.src = document.location.protocol +                            '//connect.facebook.net/en_US/all.js';
            scrFaceBook.async = true;
            document.getElementById('fb-root').appendChild(scrFaceBook);
        })();

<div class="fb-like" data-send="false" data-width="450" data-show-faces="true" data-font="arial"></div>

我这样做是为了添加FaceBook之类的按钮。当我运行我的应用程序并看到我得到“对象不支持此属性或方法时,all.js,uri:https://connect.facebook.net/en_US/all.js

有人可以建议我如何解决这个问题?提前谢谢。

3 个答案:

答案 0 :(得分:1)

您忘了将<div id="fb-root"></div>添加到HTML正文中。

您似乎忘记了APP ID

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

答案 1 :(得分:1)

您需要确保在脚本标记上方声明了dom元素。否则可能无法加载:

<div class="fb-like" data-send="false" data-width="450" data-show-faces="true" data-font="arial"></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&appId=127211380649475";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

答案 2 :(得分:0)

您的浏览器是否支持html5?也许这里的错误是“scrFaceBook.async = true;”