используя JavaScript, как перехватить все XMLHttpRequest onreadystatechange? - PullRequest
1 голос
/ 27 сентября 2010

Я разрабатываю расширение для Chrome, и мне нужно внести некоторые изменения в код страницы после его загрузки.но проблема в том, что событие window.onload в настоящее время бесполезно, когда почти любой веб-сайт использует AJAX.Вы не можете предполагать, что весь контент уже загружен, потому что window.onload запускается до того, как все запросы AJAX завершат загрузку.Поэтому я хочу иметь возможность перехватывать все onreadystatechange, принадлежащие любому XMLHttpRequest, и обрабатывать это событие в моем расширении ..... это вообще возможно?здесь помогают прототипы?

1 Ответ

3 голосов
/ 27 сентября 2010

Я не верю, что это возможно напрямую, хотя, возможно, вы могли бы заменить window.XMLHttpRequest своим собственным объектом, который действовал как прокси для реального XMLHttpRequest (но передавая глобальные обратные вызовы в ваш собственный код).

Но вы не можете предположить, что XMLHttpRequest в любом случае имеет отношение к загрузке контента. Сценарий может записать загрузку содержимого в любое событие взаимодействия или даже в неспровоцированное время ожидания.

Если вам нужно знать, когда в документ добавляется новое содержимое, вам, вероятно, потребуется События мутации DOM .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...