Сценарии inject.js и content.js в расширении браузераJavascript

Форум по Javascript
Ответить
Anonymous
 Сценарии inject.js и content.js в расширении браузера

Сообщение Anonymous »

Моя цель — внедрить код внешнего интерфейса на вкладку, если ее URL-адрес совпадает с моим URL-адресом. Для этого я сделал:
background.js:

Код: Выделить всё

chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab) => {
if (changeInfo?.url?.includes("https://www.google.com/search?")) {
chrome.scripting.executeScript(
{
target: { tabId: tabId },
files: ['injection.js'],
}
);
}
})
Это работает, но многие люди также делают это через content.js:
background.js:

Код: Выделить всё

chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab) => {
if (changeInfo?.url?.includes("https://www.google.com/search?")) {
await chrome.tabs.sendMessage(tabId, { isActive: true });
}
})
теперь мы можем добавить прослушиватель в content.js.
Мой вопрос: в чем разница? Какой подход лучше?

Подробнее здесь: https://stackoverflow.com/questions/798 ... -extension
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»