У меня есть созданное расширение Google Chrome. В моем сценарии background.js я прослушиваю изменения страницы и отправляю сообщение chrome.tabs или chrome.runtime, когда страница загружена (например, changeInfo.status === complete
). Для большинства веб-страниц я могу без проблем получать chrome.tabs.sendMessages
в сценариях содержимого, однако я только что натолкнулся на случай, когда веб-страница не может быть загружена: This site can’t be reached
(changeInfo.status
по-прежнему возвращается как complete
)
В результате мой контент-скрипт не получает ни одного сообщения. Мое расширение использует это сообщение для продолжения работы. Есть ли способ установить, не загружена ли страница должным образом, как какая-либо форма свойства в changeInfo или вкладке, возможно?
Вот мой слушатель в background.js
:
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
tabid = tab;
if (status === "ready")
{
if (tab.url !== undefined && changeInfo.status == "complete") {
status = "processing";
if (stop === false){
chrome.tabs.sendMessage(tab.id,{type:"website found", currentURL:currentURL,id: basicData.id, info:basicData});}
}
}
else if (status === "getBasic")
{
if (tab.url !== undefined && changeInfo.status == "complete") {
if (stop === false){
chrome.runtime.sendMessage({type:"triggerNext"})}
}
}
});
Вся помощьценится, и я открыт для всех решений.