【问题标题】:How to detect Facebook Like button pressed and trigger event?如何检测 Facebook Like 按钮被按下并触发事件?
【发布时间】:2011-02-03 11:21:47
【问题描述】:

示例如下:

这些家伙先让人们点击“赞”按钮(在第 1 步中),然后让用户在第 2 步中下载视频。

有趣的是,Like 按钮被检测到并且页面被刷新以显示第 2 步中模糊的图像,因此用户可以点击下载。

它似乎记得我点击了“赞”(当我重新加载页面时),所以“赞”按钮不再显示,它只显示第 2 步。

他们的交易技巧是什么?

【问题讨论】:

  • Javascript,也许吧?您可以轻松拦截事件处理程序(例如 onclick)。

标签: facebook facebook-like


【解决方案1】:

加载 Facebook 选项卡时,会传入 fb_sig_is_fan 参数,指定当前查看该选项卡的用户是否为粉丝。单击 Like 按钮将触发重新加载选项卡内容,从而传入更新的 fb_sig_is_fan,以便应用程序可以决定显示不同的图像。

【讨论】:

    【解决方案2】:

    如果用户是页面粉丝或在签名请求中不存在的实际信息。由于您首先需要像这里一样解码签名请求:

     $signed_request = $_REQUEST["signed_request"];
     list($encoded_sig, $payload) = explode('.', $signed_request, 2); 
     $data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);
    

    然后访问页面喜欢变量:

    $pageLiked = $data['page']['liked'];
    

    现在 FB 正在弃用 FBML,所以不要认为 <fb:visible-to-connection> 可以长期使用。

    【讨论】:

      【解决方案3】:

      http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/

      FB.Event.subscribe('edge.create', function(response) {
      // do something with response.session
      });
      

      【讨论】:

        【解决方案4】:

        可以使用 edge.create 检测用户何时点击赞按钮。此外,如果用户已经喜欢该页面,则可以使用 FQL Like 表进行检测。

        【讨论】:

          【解决方案5】:
          <fb:visible-to-connection>
          put here code for users that like the page (no <fb:comments>) 
          </fb:visible-to-connection>
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-01-26
            • 1970-01-01
            • 1970-01-01
            • 2023-03-03
            • 1970-01-01
            • 2013-10-11
            相关资源
            最近更新 更多