Фильтрация информации в чате iframe, который никогда не загружается полностью - PullRequest
0 голосов
/ 28 марта 2012

Я использую чат и хочу изменить способ отображения сообщений, поэтому я хотел бы иметь возможность игнорировать некоторые из них.

Проблема состоит в том, что в этом чате используется информационный фрейм, где информация (сообщения), left, join) отображается, и он никогда не загружается (к нему всегда добавляется html).

Я хотел бы использовать greasemonkey для изменения входящей информации, но я не могу, поскольку iframe никогда не заканчивает загрузку, я могу изменить его только при нажатии кнопки СТОП в браузере.

Я хочу скрыть iframe, отфильтровать и получить другой iframe (мой) с отфильтрованной информацией.Это возможно?

1 Ответ

0 голосов
/ 28 марта 2012

Вы можете скрыть оригинал 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.

Однако в мой вопрос кажется, что на самом деле есть слушатель DOM.Мне все еще нужно это реализовать, поэтому я не знаю, поддерживает ли это браузер, но это стоит попробовать (или вам придется подождать, пока я это не реализовал;)).

...