【发布时间】:2016-12-27 14:51:55
【问题描述】:
我已经使用 Facebook Open Graph Shares 实现了一个共享计数器,代码如下:
<script>
function GetShareTargetCMS(){
var token = 'XXXXXXXXXXXXXXX|YYYYYYYYYYYYYYYYYYYY';
$.ajax({
url: 'https://graph.facebook.com/',
dataType: 'jsonp',
type: 'POST',
cache: false,
data: {access_token: token, id: "http://url-to-share", scrape:true },
success: function(data){
console.log(data.share);
if(typeof data.share != 'undefined'){
$('.results_share').empty().html('<span>'+data.share.share_count+'</span>');
}else{
$('.results_share').empty().html('<span>0</span>');
}//else
}//success
});
}//GetShareTargetCMS
//Get Condivisioni
$(document).ready(function() {
GetShareTargetCMS();
});
//Get Condivisioni
//Share trigger dialog
document.getElementById('shareBtn').onclick = function() {
FB.ui({
method: 'share',
mobile_iframe: true,
href: "http://url-to-share",
}, function(response){ GetShareTargetCMS(); });
}
</script>
默认情况下,在文档就绪中调用的函数会打印潜水内当前页面的共享计数器。如果用户单击 .shareBtn,我会打开一个共享对话框。当共享成功时,我会重新调用共享函数以重新加载和更新共享计数。我不知道原因,但柜台不刷新。刷新计数器的唯一方法是重新加载页面。有什么建议吗?
我试过了:
- 使用 GET 代替 POST
- 试图在数据参数中省略“scrape: true”。
- 在没有函数的情况下“直接”使用代码
【问题讨论】:
标签: javascript jquery facebook facebook-javascript-sdk facebook-opengraph