我想像按钮一样显示facebook。当用户点击该按钮时,它应该在用户成功地喜欢该页面后进行回调。 这是我的代码:
<div class="fb-like" data-href="https://developers.facebook.com/docs/plugins/" data-width="200" data-layout="box_count" data-action="like" data-size="large" data-show-faces="false" data-share="false"></div>
<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/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '510679165797120',
xfbml : true,
version : 'v2.6'
});
FB.Event.subscribe('edge.create', function(response) {
console.log('hello');
});
};
</script>
但它不起作用。当您单击“赞”按钮时,它会显示错误。 有人可以告诉我如何解决这个问题吗?
答案 0 :(得分:1)
值得更改js.src
行。对我来说,我觉得好像这条线正在寻找一个本地文件。
js.src = "https://connect.facebook.net/en_US/sdk.js";
我之前使用过以下一行,但我不确定这是真实的区别:
js.src = "https://connect.facebook.net/en_US/sdk.js#xfbml=1"
答案 1 :(得分:1)
您可以在此网站上通过Facebook直接为您构建的Facebook页面获取代码 - &gt; base64.urlsafe_b64encode
这样可以避免弃用问题等。
只需去那里,输入相关信息,抓住他们吐出的代码并将其放在您的网站上。
祝你好运!
答案 2 :(得分:1)
演示:http://so.devilmaycode.it/facebook-like-button-showing-error-when-clicked/
发生错误的原因是您在本地主机上或不在应用程序设置中指定的同一域中
也是为了工作,你的回调函数应该在下面
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '#############',
xfbml : true,
version : 'v2.6'
});
FB.Event.subscribe('edge.create', function(response) {
console.log('hello');
});
};
(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>