我使用javascript sdk面对Facebook的分享对话框的问题。
我的分享对话框如下(完美)在以下两种情况下工作:
如果我的网站已打开且未登录Facebook,然后单击“共享”,则会要求我登录,然后打开共享对话框。
如果我的网站已打开且已登录Facebook,然后点击共享,则会直接打开共享对话框。
然而,
如果我已经从Facebook登出然后打开我的网站并点击分享按钮,那么它适用于我上面提到的所有3个案例。
<script type="text/javascript" src="//connect.facebook.net/en_US/all.js"></script>
<script type="text/javascript">
//Initialize facebook
FB.init({
appId : 'MY_APP_ID',
xfbml : true,
version : 'v2.0'
});
</script>
<script type="text/javascript">
$("#post_image_href").click(function(e) {
/* Important Variables */
var url='';
var imgToShare = '';
var currentUrl = window.location.href.split('?')[0];
var title=document.title;
e.preventDefault();
imgToShare =$('#wrap22 img:first').attr('src');
imgToShare = encodeURIComponent(imgToShare);
FB.ui( {
method: "share",
href: currentUrl+"?imgToShare="+imgToShare
},function(response){
if (response && !response.error_code) {
$('#facebook_sharing').modal("show");
$('#share_result').html("Your image has been shared successfully.");
setTimeout(function(){
$('#facebook_sharing').modal("hide");
}, 2000);
}
});
});
</script>