2012-04-22 51 views
2

我希望这不是重复的,但我没有看到过这个解释。我已经得到了我想要使用一个非常基本的Facebook共享实现:Facebook的分享只适用于用户登录?

<a name="fb_share" type="button" share_url="http://www.google.com"></a> <script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"> </script>

的问题是:我第一次点击我的“共享”按钮,它会提示我登录到Facebook的。当我登录时,它直接导致我的新闻Feed并没有显示我想分享的链接。但是,如果我登录,关闭窗口,然后重新点击我的“分享”按钮,它会显示我试图分享的链接。

有没有我从我的代码中缺少的东西?如果这有所作为,我正在使用IE9。

编辑:它似乎在Chrome中正常工作,但不在Safari中工作。

编辑2:试图用多汁的编剧的解决方案与对话,我现在不得不用下面的代码的麻烦饲料后。在系统提示我登录到Facebook后,我收到一条红色的错误消息,提示“出现错误,请稍后再试。”任何人都可以看到我可能会做错下面的代码?此外,有没有一个“最佳实践”在得到我的链接是实际的Facebook按钮(就像是根据购股权?)提前

<a onclick='postToFacebook(); return false;'>FB post</a>

<script type="text/javascript"> 
     function postToFacebook() { 
      FB.init(); 
      FB.ui({ method: 'feed', link: "http://www.google.com" }); 
     } 
    </script>` 

非常感谢!

回答

1

正如其他答案Share Button已经指出的,所以最好避免它。

使用Feed Dialog发布用户的Feed内容。对于一般用途下面的代码可以用来分享当前页面的链接(请参阅documentation额外参数):

FB.ui({method: 'feed', link: document.location.href}); 
+0

谢谢,今晚我会试试这个! – lhan 2012-04-23 12:59:23

+0

@ lhan16,只是一定要调用[JS-SDK(http://developers.facebook.com/docs/reference/javascript/)['FB.init'](http://developers.facebook.com/ docs/reference/javascript/FB.init /)之前;) – 2012-04-23 13:15:45

+0

请参阅我的第二个编辑。 – lhan 2012-04-26 01:26:30

1

我尝试其他方法来调用共享对话框:使用FB.ui({"method": "stream.share", "u": "http://www.google.com"});并通过直接URL https://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fwww.google.com

他们全都给了我带我到我的新闻源登录到Facebook在Safari浏览器后(我没有IE9方便,但我认为它是相同的)的用户体验不佳。

我不认为有什么可以做的。

此外,Facebook已经弃用,取而代之的Like按钮的分享按钮。见https://developers.facebook.com/docs/share/

股份按钮赞成Like按钮的被弃用, 将不再予以支持。只要 可能为您的应用带来最大流量,请使用Like按钮。

我测试的注销像Safari浏览器按钮的经验。我点击Like,它会打开一个弹出窗口来登录到Facebook,登录弹出窗口后关闭,但我必须再次点击Like按钮才能进行计数。

+0

嗯。有没有不同的方式发布链接到你的墙上的网站?或者这个想法一般会被弃用?我只是想在Twitter上发布推文链接。 – lhan 2012-04-22 03:13:12

+0

@ lhan16提要对话框可能是你想要的 - https://developers.facebook.com/docs/reference/dialogs/feed/ - 你可以通过FB.ui调用({“method”:“feed”, ...更多选项...});' – rmarscher 2012-05-07 22:31:12

+0

糟糕,只是看到了接受的答案,所以你已经知道这一点。 :) – rmarscher 2012-05-07 22:32:03

0

我有同样的问题。这是Safari用户登录后不会预先填充对话框中的内容。我使用了012 Feeds的直接URL FB提要对话框的方法,现在一切似乎都在Safari中运行。

更多信息here

感谢上面所有人的回答。

相关问题