Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 自定义Facebook共享按钮不起作用_Javascript_Html_Css_Facebook_Facebook Graph Api - Fatal编程技术网

Javascript 自定义Facebook共享按钮不起作用

Javascript 自定义Facebook共享按钮不起作用,javascript,html,css,facebook,facebook-graph-api,Javascript,Html,Css,Facebook,Facebook Graph Api,有人能解释一下为什么我的自定义Facebook共享按钮不起作用吗? 每当我点击按钮时,共享窗口就不会出现。 我已经在一个实际的Web服务器上尝试了它作为html文件,并且我已经阅读了facebook文档中关于共享按钮的所有内容 使用时,它确实起作用 当我点击这个按钮时,我确实感觉到了 这是我的密码。(没有CSS,因为它有点多,如果你需要,我可以添加它。) 共享对话框 单击下面的按钮以触发共享对话框 在Facebook上分享 document.getElementById('fb-share-b

有人能解释一下为什么我的自定义Facebook共享按钮不起作用吗? 每当我点击按钮时,共享窗口就不会出现。 我已经在一个实际的Web服务器上尝试了它作为html文件,并且我已经阅读了facebook文档中关于共享按钮的所有内容

使用时,它确实起作用

当我点击这个按钮时,我确实感觉到了

这是我的密码。(没有CSS,因为它有点多,如果你需要,我可以添加它。)


共享对话框
单击下面的按钮以触发共享对话框

在Facebook上分享 document.getElementById('fb-share-button')。onclick=function(){ FB.ui({ 方法:'共享', 显示:“弹出窗口”, href:'https://nureinberg.de', },函数(响应){}; }
您需要初始化FB SDK

这包括
FB.init
函数和
元素

看看这支笔吧-它在减去应用程序ID后工作正常,但弹出部分工作正常:


我还将版本ID添加到
sdk.js
脚本(
https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.7

您需要初始化FB SDK

这包括
FB.init
函数和
元素

看看这支笔吧-它在减去应用程序ID后工作正常,但弹出部分工作正常:


我还将版本ID添加到
sdk.js
脚本(
https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.7

尝试将版本和应用程序ID添加到JS SDK源:

https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.12&appId=<your-app-id>
https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.12&appId=
尽管如此,我还是建议使用异步方式加载JS SDK:

如果不想创建应用程序,请使用带有标准锚定标记的sharr.php:

https://www.facebook.com/sharer/sharer.php?u=<encoded-url>
https://www.facebook.com/sharer/sharer.php?u=

尝试将版本和应用程序ID添加到JS SDK源:

https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.12&appId=<your-app-id>
https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.12&appId=
尽管如此,我还是建议使用异步方式加载JS SDK:

如果不想创建应用程序,请使用带有标准锚定标记的sharr.php:

https://www.facebook.com/sharer/sharer.php?u=<encoded-url>
https://www.facebook.com/sharer/sharer.php?u=

谢谢您的回答。它现在可以使用以下代码

我还为它创建了一个


谢谢你的回答。它现在可以使用以下代码

我还为它创建了一个


虽然异步方式是推荐的方式,但他使用的是JSSDK的同步版本,因此他并不真正需要FB.init。感谢您的帮助。我已经实现了它,但它仍然不起作用,我还添加了自己的appID。不幸的是,在添加appID时,甚至连codepen都不能工作。appID不能工作,因为它没有在codepen.io域上运行的授权,而且我实际上已经删除了async init,并意外地单击了save。我把它放回去了,所以弹出部分仍然可以正常工作。Init现在可以工作了,但是有没有一种方法可以创建一个自定义共享按钮,而不必为每个网站注册appID@luschn@AlexanderHoerl看看我的答案,我已经包括了更多的细节。此外,如果您只需在url中添加应用程序id,它也可以与您的代码一起工作。虽然推荐使用异步方式,但他使用的是js sdk的同步版本,因此他并不真正需要FB.init。感谢您的帮助。我已经实现了它,但它仍然不起作用,我还添加了自己的appID。不幸的是,在添加appID时,甚至连codepen都不能工作。appID不能工作,因为它没有在codepen.io域上运行的授权,而且我实际上已经删除了async init,并意外地单击了save。我把它放回去了,所以弹出部分仍然可以正常工作。Init现在可以工作了,但是有没有一种方法可以创建一个自定义共享按钮,而不必为每个网站注册appID@luschn@AlexanderHoerl看看我的答案,我已经包括了更多的细节。此外,如果您只需在url中添加应用程序id,它也可以与您的代码一起工作。