显示带有动态数据的 Facebook 分享按钮

Displaying Facebook Share button with dynamic data

我做了一个测验,我希望将分数分享到 Facebook,它通过将 GET 变量传递给 PHP 文件来工作,该文件填充 OG 数据以分享到 Facebook - 这一切都有效好的,但是我的问题是分享按钮只需要在测验完成时显示,但我无法让它工作。

我试过使用 jquery 开关让按钮显示,或者用 jquery text() 填充 html...我想它需要呈现为页面负载。

  <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 = "https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.0";
    fjs.parentNode.insertBefore(js, fjs);
  }(document, 'script', 'facebook-jssdk'));</script>

<div class="result" style="display:none"></div>
<div class="fb-share-button" style="display:none" data-href="https://www.msuk-forum.co.uk/sharer.php?u=real-or-rc&t=Real or RC Quiz&d=I scored &i=quizshare" data-layout="button_count"></div>

  function returnScore(){
    $(".result").text("Nice work! You scored " + getScore() +" / "+ tot + "!");
    $(".result").toggle();
    $(".fb-share-button").toggle();
  }

  $('#questions').submit(function () {
    returnScore();
    return false;
  });

该按钮最终也会在分享按钮中获得来自 getScore() 的分数。但目前,一旦 form/quiz 提交,我只需要显示按钮即可。

提前致谢。

使用 FB.XFMBL.parse 呈现共享按钮(如果以后可见)。顺便说一句,动态 OG 标签不再可能了,您需要为每个分享提供真实的 URL。