我想添加一个非常基本的Facebook分享按钮,如下所示:
https://developers.facebook.com/docs/plugins/share-button?locale=fr_FR
问题是按钮不会简单地显示,没有javascript或网络错误。
有谁能说我做错了什么?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>titre</title>
</head>
<body>
<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";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="fb-share-button" data-href="https://developers.facebook.com/docs/plugins/" data-layout="button"></div>
</body>
</html>
提前感谢您的帮助
答案 0 :(得分:7)
明确的答案很愚蠢。代码中包含的javascript是加载SDK javascript的。
我遇到的问题是我在不通过网络服务器的情况下查看html页面。换句话说,我使用的是file://协议,并且在该协议下运行时,facebook SDK不起作用。虽然它确实吸引了很多东西并影响了DOM,但Facebook分享按钮却没有显示出来。
将其设置为仅在localhost(在我的情况下,IIS)中运行真正的Web服务器,并且显示按钮。希望这会对一些人有所帮助。
答案 1 :(得分:2)
第一行告诉你添加你没做过的sdk javascript。做以下事情你应该好好去:
<script type="text/javascript" src="Location of SDK javascript"></script>
答案 2 :(得分:1)
答案 3 :(得分:0)
有时看到Facebook按钮的这些问题是因为像Disconnect这样的浏览器扩展会阻止与Facebook等通信的脚本,所以如果是这样的话,请将您的网站列入白名单。
答案 4 :(得分:0)
除了将“sdk.js”更改为“all.js”之外,我还必须将“http:”添加到url中,即:
而不是:
js.src =“//connect.facebook.net/en_US/sdk.js#xfbml=1”;
使用:
js.src =“http://connect.facebook.net/en_US/all.js#xfbml=1”;
祝你好运
答案 5 :(得分:-1)
步骤1:获取Share按钮将存在的域的Facebook App ID。 第2步:将Facebook JavaScript SDK添加到您的网页。 第3步:添加代码以在Web页面上加载jQuery库 步骤4:添加一些jQuery和fb.ui代码以显示“共享”对话框