FB.event.subscribe('edge.remove',function(href,widget){...不起作用

时间:2012-03-19 13:50:29

标签: facebook event-handling facebook-like

今天我试图通过

插入一个事件触发器来取消facebook-fanpage
FB.Event.subscribe('edge.remove', function(href, widget) {
    top.location.href = '<?= $config['facebook_tab_url'] ?>';
});

因为我在用户不喜欢页面时使用图层。在图层下面只有应用程序的屏幕截图,因此通过firebug或其他工具删除图层将无效。

我通过PHP和代码检查like-status

$signed_request = $_POST['signed_request'];
$parsed_signed_request = parse_signed_request($signed_request, $config['app_secret']);

$liked = isset($parsed_signed_request['page']['liked']) && $parsed_signed_request['page']['liked'] == 1;
$nolikestatus = !isset($parsed_signed_request['page']['liked']);

所以我可以通过

区分HTML内容
<?php if ($liked || $nolikestatus): ?>
    HTML-CONTENT
<?php else: ?>
    HTML-CONTENT with screenshot and Layer.
<? endif; ?>

这就是为什么当用户喜欢这个页面时我必须重定向到应用程序的起始页面

FB.Event.subscribe('edge.create', function(href, widget) {
    top.location.href = '<?= $config['facebook_tab_url'] ?>';
});

哪个有效,但不同的事件不会触发,我不知道为什么!无处不在它说“edge.remove”是要走的路,但据我所知,它不起作用!

希望您了解我的问题并了解任何解决方案!

1 个答案:

答案 0 :(得分:1)

edge.remove仅适用于Like button plugin 。没有内置的Facebook Page Like按钮。