过滤有关从未完全加载的聊天iframe的信息

时间:2012-03-27 22:35:40

标签: jquery chat greasemonkey

我使用聊天,我想改变msgs的显示方式,所以我希望能够忽略其中一些。

问题是这个聊天使用了一个iframe,其中显示了信息(msgs,left,joined),并且它从未被加载(它总是将html添加到它中)。

我想使用greasemonkey来更改传入的信息,但我不能因为iframe永远不会完成加载,我只能在浏览器上按下STOP按钮时更改它。

我想隐藏iframe,过滤器,并获取其他iframe(我自己的)以及过滤后的信息。这可能吗?

1 个答案:

答案 0 :(得分:0)

您可以隐藏原始iframe并在页面加载时注入您自己的iframe并添加新帖子的监听器。并在过滤后添加新帖子到您自己注入的iframe

我必须自己做一些我正在为SO聊天创建的插件。我最终使用了一个积极的倾听者。类似的东西:

function PostListener() {
  var self = this;

  this.listen = function() {
    // check for new messages in hidden iframe and do stuff you want to do with them

    setTimeout(self.listen, 1000);
  };
}

(function() {
  var postListener = new PostListener();
  postListener.listen();
})();

基本上每1秒检查一次新消息。这是我的第一次尝试,因为我认为没有DOMlisteners可用。

然而在a question of mine中,似乎确实存在一个DOM侦听器。我仍然需要实现它,所以我不知道它的浏览器支持,但值得尝试(或者你必须等到我实现它;))。