我的网站上有这些共享弹出窗口,用户可以在其中共享我们的页面。这就是我真正想要的:检查用户何时成功(回调或响应)共享了帖子。
我找到了以下解决方案:StackOverflow。
但这仅在tweet
事件上触发,tweet
事件与click
事件相同地触发,因此不是这样。有没有办法检查他们是否真的共享了它?
更新:我尝试检查Twitter的Streaming API是否可以帮助我解决这一问题。但这只给我几分钟后发布的推文。应该立即执行。所以这也不是一个选择。
其他更新:我的解决方法都没有用
我为Facebook所做的工作有效:
function (d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {
} else {
js = d.createElement(s);
js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}
}(document, 'script', 'facebook-jssdk'));
function shareFacebook() {
FB.init({
appId: 'apiid',
xfbml: true,
version: 'v2.5'
});
FB.ui(
{
method: 'share',
href: 'google.com'
},
// callback
function (response) {
if (response && !response.error_message) {
alert('shared!')
}
}
);
}
答案 0 :(得分:1)
答案在您发布的链接中。使用链接https://stackoverflow.com/a/6932354/10934956中显示的twitter js小部件和intents api。
正如您所说的,这不仅是用来监听窗口关闭时的声音。您可以订阅特定的事件侦听器,例如加载,渲染,调整大小,tweet,关注,转发,喜欢和单击。
您可以将监听器添加到tweet
事件中,然后插入回调,就像我提供的链接一样。
如果仅在关闭窗口时才想获得回调,则可以评估事件的URL,以查看是否在完整的Tweet URL上。当然,这不是100%可靠的。
编辑:如果不使用此小部件,出于安全原因,无法将回调添加到其他选项卡/浏览器。甚至同一浏览器中的标签页都保持完全独立,因此站点A
无法读取站点B
上可能有重要信息的任何内容。