在应用程序上按下类似按钮时自动刷新时间轴页面


Auto refresh timeline page when like button pressed on application?

在页面上发布时间线之前,当用户在页面上按下类似按钮时,页面会自行刷新。

现在,如果你打开应用程序并按下右上角的类似按钮,页面就不会自行刷新,应用程序也不会识别出用户"喜欢"了页面。

当用户按下类似按钮时,有没有一种方法或事件可以自动刷新页面?

谢谢。

FB已经提交了一个错误,请查看并在https://developers.facebook.com/bugs/228778937218386

您可以定期检查用户是否喜欢这样的页面:

FB.api
(
    "/me/likes/[page id]",
    function( response )
    {
        if ( response.data )
        {
            if( response.data.name )
            {
                alert( "We've got a fan!" );
            }
            else
            {
                alert( "Not a fan!" );
            }
        }
        else
        {
            alert( "Something went worng..." );
        }
    }
);

此外,如果你需要将用户移动到另一个选项卡/应用程序,你必须刷新整个页面,因此使用:

top.location.href = "[new url]";

我设法找到了一个变通方法,通过在该页面的相册列表中查找一个名为"封面照片"的相册来检测该页面是否仍然没有使用时间线。通过这种方式,您仍然可以向这些页面显示fangates。

这是一个示例:

http://graph.facebook.com/-page_id-/albums?fields=name

除非页面尚未发布,否则您不需要令牌。

这种方法的问题是,有些页面仍然没有封面图片,但这是少数。

试试这个:

FB.Event.subscribe('edge.create',function(){
    window.location = '/some/awesome/url';
});