Facebook分享按钮未显示

3

我想添加一个非常基本的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>

提前感谢您的帮助

6个回答

10

这个答案有点荒谬。在代码中包含的javascript就是加载SDK javascript的原因。

我的问题在于我在没有通过Web服务器浏览html页面。换句话说,我使用的是file://协议,而当运行Facebook SDK时,它不适用于该协议。尽管它会拉取很多东西并影响DOM,但Facebook分享按钮不会显示。

将其设置为通过真正的Web服务器(在我的情况下是IIS)上运行,并且神奇的是按钮出现了。希望这能帮助一些人。


1
对我来说,是大小属性导致按钮无法显示。 只需添加。
data-size="large"

将按钮的div标签添加到其中并显示。
顺便提一下,根据文档,没有中等大小可用。

0

第一行告诉你要添加SDK JavaScript,而你还没有这样做。按照以下步骤操作,你就可以顺利进行:

<script type="text/javascript" src="Location of SDK javascript"></script>

我会在4分钟内完成它 ;) - Arn a
5
这个代码示例中没有出现这个脚本标签,也没有在Facebook SDK文档中的任何地方提到。这就是你无法在示例中提供位置的原因。Web开发人员不应该猜测或搜索如何在网页上放置一个简单的按钮,只因为代码示例不完整。https://developers.facebook.com/docs/plugins/share-button#example - Henrik Erlandsson
5
这是一个愚蠢的回答......Facebook脚本本身就是一个脚本加载器。它通过将脚本标记插入文档中来加载所需的JavaScript SDK。 - Brett Green

0

我不得不在URL中添加"http:",并将"sdk.js"更改为"all.js",如上所建议:

原来的代码:

js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1";

修改后的代码:

js.src = "http://connect.facebook.net/en_US/all.js#xfbml=1";

祝好运!


0
有时候,无法正常显示Facebook按钮的问题是由于浏览器扩展程序(例如Disconnect)阻止与Facebook的脚本通信等原因造成的,所以如果是这种情况,请将您的网站添加到白名单中。

-1

步骤1:为将放置分享按钮的域名获取一个Facebook应用程序ID。 步骤2:将Facebook JavaScript SDK添加到您的网页中。 步骤3:在您的网页上添加代码以加载jQuery库。 步骤4:添加一些jQuery和fb.ui代码以显示分享对话框。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接