仅在关注后使用twitter回调

时间:2016-07-04 12:37:30

标签: javascript twitter twitter-oauth

我创建了一个Twitter关注按钮。在那个按钮我想要一个回调函数。因此,当用户关注它时,将显示一种警报类型的东西。但问题是它正在显示消息,即使用户没有使用他的Twitter帐户登录。我希望它只有在跟随之后才能显示消息。我的代码就像这样

<a href="https://twitter.com/twitter" class="twitter-follow-button" data-show-count="false" data-size="large" data-show-screen-name="false">Follow @twitter</a> 

    <script>
            function show_message(event) {
        console.log('test');
    }
    window.twttr = (function (d,s,id) {
                                        var t, js, fjs = d.getElementsByTagName(s)[0];
                                        if (d.getElementById(id)) return; js=d.createElement(s); js.id=id;
                                        js.src="//platform.twitter.com/widgets.js"; fjs.parentNode.insertBefore(js, fjs);
                                        return window.twttr || (t = { _e: [], ready: function(f){ t._e.push(f) } });
                                        }(document, "script", "twitter-wjs"));
                                    twttr.ready(function (twttr) {
                                        twttr.events.bind('follow', show_message);
                                    });
</script>

以下是fiddle链接

1 个答案:

答案 0 :(得分:2)

Twitter不再支持您所询问的功能。

您可以在this page上阅读公告和原因。

简而言之,事件现在在Intent被触发时产生,并且在它完成之后不再产生。这些更改与这些事件在本机应用程序捕获这些链接的移动设备上不可靠相关,因此在Intent完成后无法获取事件,因为我们不再在浏览器中而是在本机应用程序中。

要解决此问题,现在会在触发Intent时引发所有事件,因此您获得的结果实际上是正确且有意的。

JavaScript Twitter小部件的更改自2015年11月15日起生效。