Доступ к глобальным переменным в сценарии содержимого Gmail
Вы ищете решение для получения переменной GLOBALS с веб-страницы активного сообщения Gmail с помощью расширения Chrome .
Изоляция в контенте Скрипты
Скрипты содержимого выполняются в изолированной среде, предотвращая прямой доступ к глобальным переменным страницы.
Техники передачи сообщений
Чтобы преодолеть эту проблему изоляции, рассмотрите методы передачи сообщений:
Внедрение скрипта Элемент
Вставьте элемент сценария в DOM страницы, используя URL-адрес расширения:
var s = document.createElement('script');
s.src = chrome.extension.getURL('script.js');
(document.head||document.documentElement).appendChild(s);
Создание прослушивателей событий
Кроме того, установите прослушиватели событий для обмена данными:
document.addEventListener('RW759_connectExtension', function(e) {
alert(e.detail); // Transfer data, e.g., GLOBALS
});
Инъекция Script.js
В "script.js" (добавлено в web_accessible_resources в манифесте):
setTimeout(function() {
document.dispatchEvent(new CustomEvent('RW759_connectExtension', {
detail: GLOBALS // Send GLOBALS to the extension
}));
}, 0);
Преимущества передачи сообщений
Подходы к передаче сообщений допускают ограниченное использование логики расширения на веб-страницах и доступ к расширенным функциям Chrome API.
Вывод
Реализуя эти методы, вы можете эффективно получать доступ к глобальным переменным, таким как GLOBALS из сценария содержимого вашего расширения Chrome.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3