2013-03-14 9 views
20

Mam przycisk niestandardowy tweet:Niestandardowy projekt dla przycisku Twittera z wydarzeniami

<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> 

Teraz chcę osiągnąć jakiś rezultat po tweet został opublikowany. Aby to zrobić, szukałem na Twitterze Events 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> 

to jednak API działa tylko na przyciski zakaz niestandardowych (twitter-share-button klasa).

Ktoś zdołał stworzyć niestandardowy przycisk, który nasłuchuje zdarzeń?

+2

Dlaczego nie chcesz po prostu dodać 'Twittera zakładowego-button' klasę niestandardowego przycisku elementu? Próbowałeś już tego? Jeśli łamie styl, możesz zawsze nadpisać styl związany ze stylem Twitter za pomocą niestandardowych arkuszy stylów. –

+2

Klasa Twitter-share-button jest używana przez bibliotekę javascript na Twitterze, aby usunąć jej zawartość i wstawić element iframe. – Mateu

+0

Dobre połączenie @Mateu. Nie sprawdzałem dokładnej pracy ich biblioteki; właśnie głośno myślałem, co zrobię. Przy okazji przypuszczam, że podany przykład kodu jest * przykład *, a nie kopią kodu rzeczywistego kodu? Ponieważ w twoim kodzie jest literówka, która jest dla mnie niewielka do edycji: 'wttr.events.bind' powinno być' twttr.events.bind' –

Odpowiedz

30

Możesz mieć niestandardowy link i nadal mieć intencje WWW!

klucz jest, zamiast swój link wskazujący na „https://twitter.com/share” należy wskazać „https://twitter.com/intent/tweet

takiego:

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

W ten sposób można korzystać z zamiary internetowych jak ty staraliśmy:

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

Sprawdź to jsFiddle

+0

Przepraszam, że nie działało ... – juanchod

+0

W jaki sposób mogę dołączyć łącze, które chcę z tego zrobić? Proszę pomóż mi. – CENT1PEDE

+1

@GreenFox Podoba Ci się to? [Tweet z linkiem] (https://twitter.com/intent/tweet?url=http%3A%2F%2Fnunooliveira.me) Czy tego właśnie szukasz? – nmoliveira

0

mam jakąś jedną z akcji zakładowym

<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/

Powiązane problemy