0

我对 Fancybox2 和 Facebook 的类似按钮代码有一个奇怪的问题。我已经尝试了各种方法来使用 facebook 生成的代码来集成 like 按钮,但它只是不起作用。这是我所做的以及我得到的错误(问题将在最后出现)

一个。我尝试使用 iframe 代码,如 Fancybox 页面的提示和技巧部分所示。按钮出现,我可以单击它,但出现以下错误:

不安全的 JavaScript 尝试 从具有 URL https://s-static.ak.facebook.com/connect/xd_arbiter.php?version=21#channel=的框架访问具有 URL http://jsfiddle.net/TheEternalAbyss/67Fxp/的框架…l.net&channel_path=%2F_display%2F%3Ffb_xd_fragment%23xd_sig%3Df2ddbc4ff%26。请求访问的帧具有“https”协议,被访问的帧具有“http”协议。协议必须匹配。

因此,如果单击“赞”按钮,它就不会向 facebook 发送任何内容,并且在功能上已经失效。

湾。我决定尝试使用 Facebook 的类似代码生成器的 HTML5 方法,一切似乎都很好,但我没有在点击的图像中显示任何按钮。当我检查元素时,我看到了 div 和其中的所有 html,只是我在呈现的页面上什么都看不到。

这可以在这里特别看到...... http://jsfiddle.net/TheEternalAbyss/67Fxp/

需要注意的三件事: 1) 我有 iram 代码,所以如果您单击图像,您会看到按钮,但您也会收到协议不匹配错误。2)灰色边框区域(在页面中,当您单击图像时是 HTML5 方法,但只有当我有 html 代码时它才有效

<div class="fb-like" data-href='' data-send="false" data-width="400" data-height="25" data-show-faces="true" data-font="lucida grande"></div>

在 jsfiddle 的 html 区域。3)当您单击图像时,该灰色框中应该出现的是“赞”按钮,但我什么也没有。

所以最后我的问题:

我怎样才能让这两种方法起作用..解决协议不匹配问题,或者使 html5 方法起作用?

预先感谢您的协助。我真的需要弄清楚这个谢谢!

编辑 解析函数确实有助于让 facebook 出现,但是我仍然遇到协议不匹配问题。我会再玩一些,欢迎更多帮助,谢谢!

4

1 回答 1

0

如果您使用的是 HTML5 版本,则需要触发 JavaScript 调用来呈现按钮(如果它没有在页面加载时呈现)。由于您需要在页面加载时显示 Like 按钮,因此调用该FB.XFBML.parse()函数,您将看到该按钮将出现。

您需要做的是编辑 fancybox 的 onclick 事件,以便FB.XFBML.parse()在用户单击图像时调用它。

于 2013-04-13T11:29:12.427 回答