23

カスタムツイートボタンがあります:

<a href="http://twitter.com/share?url=http://example.com;text=myText;size=l&amp;count=none" target="_blank">
    <div>
        <img src="/assets/twitter-logo.jpg">
        <span>Twitter</span>
    </div>
</a>

ツイートが公開された後、いくつかの結果を達成したいと思います。そのために、TwitterイベントAPIを確認しました。

<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
<script type="text/javascript">
    twttr.events.bind('tweet', function (event) {
        alert("Tweet Successful");
    });
</script>

ただし、このAPIは非カスタムボタン(twitter-share-buttonクラス)でのみ機能します。

イベントをリッスンするカスタムボタンを作成した人はいますか?

4

3 に答える 3

36

カスタムリンクを使用しても、Webインテントを使用できます。

重要なのは、「https://twitter.com/share 」を指すリンクではなく、「https://twitter.com/intent/tweet」を指す必要があるということです

このような:

<a href="https://twitter.com/intent/tweet">Tweet</a>

このようにして、あなたが試していたようにWebインテントを使用できます。

twttr.events.bind('tweet', function (event) {
  // Do something there
  alert('Tweeted');
});

このjsFiddleを確認してください

于 2013-04-29T21:34:59.333 に答える
0

共有アクションのあるものを手に入れました

<a href="https://twitter.com/share" class="twitter-share-button" data-via="pincheregio" data-size="large" data-count="none">Tweet</a>

<script>
    !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>

      twttr.ready(function (twttr) {
        twttr.events.bind('tweet', function (event) {
        alert("paso");
      });

    });
</script>

http://jsfiddle.net/aXCNX/139/

于 2014-10-31T00:25:14.993 に答える
0

「ツイート」イベントで時間を無駄にしないでください。他のソーシャルネットワークとは異なり、Twitterは、ツイートが正常に完了したか、ユーザーがウィンドウを閉じたかに関係なく、これを起動します。したがって、代わりに次のコードを使用してください。

jQuery('#twitter').off('click').on('click', function() {
  var field_list = {
    url: 'https://example.com/',
    text: 'Some random text',
    hashtags: 'myhashtag,anothertag',
  }
  window.open('https://twitter.com/share?'+jQuery.param(field_list), '_blank', 'width=550,height=420').focus();
});
于 2019-12-22T12:58:54.933 に答える