1

一切都在标题本身中。我正在尝试创建一个带有回调的自定义推文按钮。我已经粘贴了下面的代码。我没有使用来自 twitter 的 Twitter Button 代码,因为我在同一页面上有多个推文按钮,并且我想根据单击的按钮将唯一的 id 传递给每个回调。

第一次单击按钮时,弹出窗口打开推文,推文后,窗口关闭但不调用回调函数。第二次点击同一个按钮(没有重新加载页面),回调函数被调用!我知道为什么会发生这种情况以及如何纠正这种情况以在第一次点击时起作用?

谢谢你们。

<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;
    }
4

1 回答 1

3

因为在您单击按钮之前,您不会绑定您的事件。您需要在twOpenPopup()函数之外绑定事件。

于 2012-06-26T17:01:10.623 回答