【问题标题】:Twitter Javascript API: adding Web Intent eventsTwitter Javascript API:添加 Web Intent 事件
【发布时间】:2013-11-27 01:34:34
【问题描述】:

我需要处理“tweet”事件。这就是我现在所拥有的,但它不起作用:

<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
<script type="text/javascript">

function jsTweet() {

   // some other stuf here
   // ...

   var urlTW = "https://twitter.com/intent/tweet?text=Text&url=http://my_url.com";
   var winTW = window.open(urlTW,'','toolbar=0, status=0, width=650, height=360');
}

(function() {
    twttr.events.bind('tweet', function(event) {
        alert('tweet!!!!');
    });
}());
</script>

<a href="javascript:void(0)" onClick="jsTweet();">

【问题讨论】:

标签: javascript events twitter


【解决方案1】:

几件事:

1/ 关闭你的锚标签。

2/ 您的匿名函数仅在页面加载时被调用。 twttr 对象此时不存在。所以没有绑定完成。使用 Firebug 或其他工具调试您的函数,这应该显示为错误。

【讨论】:

  • 绑定肯定完成了。当我将链接更改为 twitter.com/intent/tweet?text=Text&url=http://my_url.com"> 时,一切顺利。但是我需要像上面的例子一样显示推文弹出窗口,因为在显示它之前我还有一些其他事情要做。
  • 绑定没有在你的函数 jsTweet(); 中完成。它在它之外。单击完成后,匿名函数将不会执行。此外,您的匿名函数也有一些奇怪的地方。如果您希望它在页面加载时执行,它应该类似于(function() { ... })();。在您的示例中,您的匿名函数永远不会执行。
  • 让我们假设,该锚点只会被点击一次,jsTweet 代码将是 fucntion jsTweet() { var urlTW = "https://twitter.com/intent/tweet?text=Text&amp;url=http://my_url.com"; window.open(urlTW,'','params'); twttr.events.bind('tweet', function(event) { alert('tweet!!!!'); }); } 但它仍然不起作用:(
  • 我不熟悉 twitter API,但我觉得这个 'twttr' 对象突然就这样存在很奇怪。它在哪里定义?这是什么?
  • 这是 Twitter 错误。他们会尝试修复它,但他们不给我任何估计。
猜你喜欢
  • 2013-11-10
  • 2015-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-29
  • 2018-01-14
  • 2015-07-13
  • 1970-01-01
相关资源
最近更新 更多