Я создаю расширение Google Chrome, и у меня есть background.js и content_script.js. Когда загружается веб-страница, я отправляю сообщение на скрипт содержимого для запуска функции; к сожалению, он не ведет себя так, как ожидалось. Код в вопросе находится в моем файле content_script.js, и это выглядит следующим образом:вызов функции внутри chrome.runtime.onMessage.addListener
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
alert("Test 1 2 3");
welcome(tab);
}
);
У меня есть функция под названием welcome(tab)
, который принимает текущую вкладку в качестве параметра и выполняет некоторые произвольные функции. Я знаю, что сообщение получено, потому что alert
всегда происходит, но функция welcome
никогда не выполняется. Я знаю, что функция welcome
работает, я провел много испытаний. Вещи перестали работать, когда я добавил addListener
. Какие-либо предложения? До сих пор я везде искал. Кроме того, может ли это иметь отношение к функции addListener, не зная, что такое глобальная переменная tab
?
Хм, похоже, что это не работает. Если вы уверены, что это правильно, я могу снова проверить код функции 'welcome'. Но по праву я добавил ваше редактирование, и« alert »все еще всплывает, после этого ничего не происходит. –
@CameronPayton, я тоже не очень уверен в этом. Но нужно что-то описать: параметр, необходимый для функции приветствия, - это объект int (tab_id) или вкладка или любая другая информация о вкладке? – Kelvin
вы можете использовать console.log (sender.tab), чтобы узнать подробности этого объекта и использовать нужную вам информацию. – Kelvin