【问题标题】:Detect FB share dialog is ready检测 FB 共享对话框已准备就绪
【发布时间】:2016-07-20 12:18:46
【问题描述】:

我们需要显示 FB 分享对话框。可以使用以下任一 FB.ui 来完成:

FB.ui({
        method: 'share',
        display: 'iframe',
        href: '{{postUrl}}'
    });

甚至使用链接/REST。

我可以向 FB.ui() 添加第二个参数作为 function(result){...},并且 FB JavaScript SDK 将在对话框关闭后调用它作为回调 [要么发生共享,要么没有]。

我如何检测到对话框是显示的,而不是关闭的?

谢谢

【问题讨论】:

    标签: javascript facebook-graph-api facebook-javascript-sdk fbsdk


    【解决方案1】:

    只有在您向用户授权publish_actions 权限时,您才能确定是否有人共享了某些内容。在这种情况下,您将在回调中获得 Post ID,您可以在文档中阅读:https://developers.facebook.com/docs/sharing/reference/share-dialog#response

    请注意,您不得以任何方式奖励用户分享或激励分享。您不会仅仅因为检查用户是否分享了某些内容而获得 Facebook 批准的publish_actions

    编辑1:如果你只是想知道对话框是否可见......好吧,当你调用FB.ui时它是可见的,它不再可见然后调用回调。

    编辑 2:我没有看到任何用例(请告诉我),但如果您想知道对话框是否出现(例如,没有被弹出窗口阻止程序阻止) ,那么我会说它是不可能检测到的。

    【讨论】:

    • 感谢您花时间看我的帖子。不幸的是,您的回答与我的问题无关。我知道如何处理带有结果的回调。
    • 好的,你没听懂我的回答……这与你的问题 100% 相关。您想知道用户是否真的通过共享对话框发布了某些内容,对吗?如果不是,请解释。
    • 也许,我没有。不过,我希望你能回答我的问题。
    • 那么你的问题到底是什么?与其评论“你没有回答”,不如解释一下?
    • 如果您唯一的问题是知道“对话框是否显示”...好吧,如果您调用 FB.ui,它是可见的。就这么简单。
    猜你喜欢
    • 1970-01-01
    • 2015-07-01
    • 2019-08-09
    • 1970-01-01
    • 2012-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多