2012-06-26 52 views
1

標題本身就有一切。我正在嘗試使用回叫來創建自定義推文按鈕。我已經粘貼下面的代碼。我沒有使用Twitter的Twitter按鈕代碼,因爲我在同一頁面上有多個推文按鈕,並且我想根據單擊哪個按鈕,向每個回調傳遞一個唯一的ID。自定義推文'Tweet Button'回調不適用於第一次點擊,但第二次運作

第一次點擊該按鈕時,彈出窗口打開,tweeting後窗口關閉,但不調用回調函數。第二次,我點擊相同的按鈕(不重新加載頁面),調用回調函數!任何我想法爲什麼發生這種情況,以及如何糾正這種情況,以便第一次點擊?

謝謝大家。

<a href="#" target="_blank" id="twtShareLink" 
       onclick="return twOpenPopup('<URL>','<TEXT>','<UNIQUE_ID>')" 
       >Tweet It!</a> 

JS:

function twOpenPopup(url,text,unique_id){ 
     twttr.events.bind('tweet',function(event){ 
       alert('Here'); 
       //Code that uses unique_id here; 
     }); 
     var twturl="https://twitter.com/intent/tweet?url="+encodeURIComponent(url) + 
      "&count=none&source=tweetbutton&text=" + encodeURIComponent(text) + "&original_referer=" + encodeURIComponent('<?= $_SERVER['HTTP_HOST'] ?>'); 
     document.getElementById("twtShareLink").href = twturl; 
     return true; 
    } 

回答

3

因爲你,直到你點擊該按鈕會不綁定您的活動。您需要將該事件綁定到twOpenPopup()函數之外。

+0

我是多麼愚蠢......出於某種原因,我將它複製到了裏面,然後忘記了綁定事件在函數中!感謝您指出這一點。 – Vishnu

+0

不客氣。如果它幫助你,請接受這個答案。 – sesser

相關問題