用户点击“赞”后关闭模式弹出窗口

时间:2012-02-02 23:36:04

标签: facebook-like

我们的网站弹出一个模态javascript / jquery对话框,要求用户在Facebook上关闭或“赞”继续。我们正在使用“喜欢”代码的HTML5版本。

“关闭”工作正常,但如何在用户点击“赞”时关闭对话框?

实际的“赞”按钮是由Facebook在IFrame中提供的,我还没有通过JavaScript获得它。

有什么想法吗?

3 个答案:

答案 0 :(得分:1)

订阅edge.create FB JS活动(http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/)并在收到后关闭弹出窗口。然而,你会遇到问题,因为在喜欢之后,Facebook也喜欢建立一个对话框,允许liker发布关于它的墙的链接。因此,您可能会因为过早关闭对话而意外隐藏该文件。

答案 1 :(得分:0)

首先检查以下代码是否已实现:

<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_GB/all.js#xfbml=1&appId=261463080590982";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

然后执行以下操作:

<script>
FB.Event.subscribe('edge.create', function(response) {
close_function()
});
</script>

其中close_funciton()与您在正常关闭时调用的函数相同。

有关此功能的详细信息:https://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/

如果您在同一页面中有更多相似的按钮,并且具有不同的“功能”,那很有趣。

答案 2 :(得分:-1)

如果您根本不想显示它 你可以使用下面的CSS代码

.fb_edge_widget_with_comment{
  position: absolute;
}

.fb_edge_widget_with_comment span.fb_edge_comment_widget iframe.fb_ltr {
  display: none !important;
}

希望有所帮助:)