Вы не можете использовать chrome.tabs.onUpdated для XHR, потому что он срабатывает только при обновлении вкладки.Когда вы отправляете запрос XHR, вкладка не обновляется (в этом вся суть "AJAX")
Единственный способ узнать, завершился ли вызов AJAX, - это переопределить его.Вы можете переопределить запрос AJAX (который использует XmlHTTPRequest), что-то вроде этого:
var origXHR= window.XMLHttpRequest;
window.XMLHttpRequest = customImplementation;
XMLHttpRequest может быть синхронным или асинхронным, поэтому вы должны принять во внимание оба варианта.Когда я имел в виду customImplementation
, это означает, что вы будете использовать ту же реализацию, но в некоторых местах будете добавлять хуки (например, шаблон адаптера).