2
<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&appId=223245147771570";
fjs.parentNode.insertBefore(js, fjs);}
(document, 'script', 'facebook-jssdk'));
FB.Event.subscribe('edge.create',
function(response) {
    alert('You liked the URL: ' + response);
});</script>   
  <h1>Lajknout stranku!</h1>
  <div class="fb-like" data-href="https://www.facebook.com/Testra22" data-send="false" data-layout="button_count" data-width="10" data-show-faces="false" data-font="trebuchet ms"></div> 

我使用此代码创建 FB Like 按钮,我想在用户单击它时显示警报。但是有js错误Uncaught ReferenceError: FB is not defined。

4

1 回答 1

3

您在浏览器加载之前开始使用 Facebook JS SDK。

因为您使用异步方式加载 JS SDK,您需要定义window.fbAsyncInit(如JavaScript SDK 文档中所述)函数并从此处运行依赖于 JS SDK 的代码...

window.fbAsyncInit = function() {
  FB.Event.subscribe('edge.create', function(response) {
    alert('You liked the URL: ' + response);
  });
}
于 2012-06-01T21:04:19.567 回答