能否监听AddThis帖子分享事件?

12

我正在使用AddThis小部件来方便地分享网站内容到Twitter、Facebook和Google+。我在我的网站上已经有登录用户,现在想要将已登录的用户与他的分享行为关联起来。

为此,我需要监听Addthis小部件的回调函数,以下是他们网站上的直接示例:

function shareEventHandler(evt) { 
    if (evt.type == 'addthis.menu.share') { 
        alert(typeof(evt.data)); // evt.data is an object hash containing all event data
        alert(evt.data.service); // evt.data.service is specific to the "addthis.menu.share" event
    }
}

// Listen for the share event
addthis.addEventListener('addthis.menu.share', shareEventHandler);

这个事件的问题在于它在实际分享之前就被触发了。例如,用户点击“推特”按钮,脚本会被触发,推特对话框会启动,然后用户要么继续分享要么在对话框中取消分享。

理想情况下,事件处理程序应该在实际成功完成分享后触发,而不是在用户取消分享时触发。从官方文档上看似乎不可能,但我仍然想尝试一下是否有创造性的解决方法?


我认为没有相应的API调用,因为他们的网站的操作方式完全是这样的... 点击分享按钮然后按取消/关闭... 会出现"感谢分享!"的信息。AddThis在许多方面都有帮助,但并不完美。 - balexandre
@Ferdy 这个问题太老了,你现在一定已经知道了解决方法。所以请分享一下,让其他人也能了解这个问题。 - Dinesh Patil
@DineshPatil 不要以为我有解决方案,只是因为这个问题很旧而独自保留着它。我没有。我从未解决过它。 - Fer
我正在寻找同样的解决方案。如果有人有解决方案,请分享。 - user1544195
1个回答

1

可能的解决方法:
我假设分享AddThis内容框的帖子已被更改...检查此元素(可能是类)以确保分享成功。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接