【问题标题】:how to listen to tweets loaded dynamically in twitter?如何收听 Twitter 中动态加载的推文?
【发布时间】:2012-02-07 19:01:22
【问题描述】:

我正在尝试通过构建 chrome 插件为时间轴中的每条推文添加图像。目前,该插件适用于页面刷新时加载的推文。但是我如何扩展插件以包含在我的时间轴中动态加载的“新推文”和“过去推文”?

【问题讨论】:

  • 我正在尝试解决同样的问题,您似乎在下面找到了解决方案,您介意发布一个对您有用的代码示例吗?

标签: javascript dom twitter google-chrome-extension


【解决方案1】:

您可以使用setInterval() 定期检查它们或搜索推文后是否有任何事件被 Twitter 脚本调用。

还有 some events 看起来相关,但我没有测试它们,例如:

  • DOMNodeInserted - 当一个节点被添加为另一个节点的子节点时触发,

编辑:

我看到 Twitter 使用 jQuery。 jQuery 又具有jQuery.ajaxPrefilter() 函数在发出 AJAX 请求之前调用。您可能可以使用它将您的事件绑定到jqXHR 对象(我想这是XMLHttpRequest 对象)并根据它将返回的内容执行不同的操作。请参阅the documentation of jQuery.ajaxPrefilter() 和the documentation on XMLHttpRequest。

【讨论】:

  • 我尝试了 DOMNodeInserted,但它似乎不起作用.. setInterval() 我没有尝试过,现在就做..
  • @user926321: setInterval() 应该可以工作,但对于即时检查,您可以使用我刚刚插入答案的解决方案。它使用jQuery.ajaxPrefilter(),您可以使用它来拦截来自服务器的响应(我想,我没有在 Google Chrome 扩展程序中尝试过),如果 Twitter 用新推文响应,您可以简单地执行脚本,插入图像对于每条新推文(在插入 HTML 之后,因此您不会干扰 Twitter 脚本的工作方式)。
  • 实际上 setInterval() 与正确的条件语句结合使用对我来说效果很好! ..稍后将尝试其他建议!谢谢!
猜你喜欢
  • 2016-02-18
  • 2022-01-07
  • 2013-06-08
  • 2011-07-09
  • 1970-01-01
  • 2016-08-06
  • 1970-01-01
  • 2018-04-25
  • 1970-01-01
相关资源
最近更新 更多