1

我正在做一个小测验,你可以在其中找出你最喜欢儿童读物系列中的哪个角色。你可以在这里看到它:https ://www.facebook.com/forlagetbabu/app_471991576163640 (它是丹麦语)。

回答完所有问题后,用户会得到结果,然后我希望能够提示用户在他/她的时间轴上分享结果。如果不可能或者如果它更简单,我希望他们可以分享他们使用过测验应用程序。

该应用程序是用 php 编写的,我添加了用于提示用户从开发者网站发布的代码:https ://developers.facebook.com/docs/channels/ :

<div id="fb-root"></div>
      <script src="http://connect.facebook.net/en_US/all.js">
      </script>
      <script>
         FB.init({ 
            appId:'YOUR_APP_ID', cookie:true, 
            status:true, xfbml:true 
         });

         FB.ui({ method: 'feed', 
            message: 'Facebook for Websites is super-cool'});
      </script>

这确实有效。问题是用户没有机会看到结果,因为点击“查看结果”后立即出现提示窗口。我可以让它在几秒钟后出现,或者在他们分享后引导他们回到结果页面吗?我怎样才能做到这一点?我感谢所有帮助!!!

4

1 回答 1

1

如果您想延迟打开提示窗口,您可以使用 Javascript 超时:

setTimeout(function(){shareResults()},2000);     //waits 2 seconds

function shareResults() {
FB.ui({ method: 'feed', 
        message: 'Facebook for Websites is super-cool'});
}

或者您在启动弹出窗口的“查看结果”页面上放置一个“共享结果”按钮。

<a href="#" onclick="shareResults()">Share Results</a>
function shareResults() {
FB.ui({ method: 'feed', 
        message: 'Facebook for Websites is super-cool'});
}

此外,如果您有可用页面的 php 变量,您可以将它们回显到共享消息中:

<?php
$userScore = 100;
?>

function shareResults() {
FB.ui({ method: 'feed', 
        message: 'I got <?php echo $userScore; ?> points in the game'});
}

希望有帮助

于 2012-09-12T15:22:44.187 回答