Acceso a variables globales en el script de contenido de Gmail
Busca una solución para recuperar la variable GLOBALS de la página web del mensaje activo de Gmail usando una extensión de Chrome .
Aislamiento en scripts de contenido
Los scripts de contenido se ejecutan en un entorno aislado, lo que impide el acceso directo a las variables globales de la página.
Paso de mensajes Técnicas
Para superar este aislamiento, considere técnicas de paso de mensajes:
Inyectar un elemento de secuencia de comandos
Inyectar un elemento de secuencia de comandos en el DOM de la página usando la extensión URL:
var s = document.createElement('script');
s.src = chrome.extension.getURL('script.js');
(document.head||document.documentElement).appendChild(s);
Establecimiento de detectores de eventos
Además, establezca detectores de eventos para el intercambio de datos:
document.addEventListener('RW759_connectExtension', function(e) {
alert(e.detail); // Transfer data, e.g., GLOBALS
});
Inyección de script.js
En "script.js" (agregado a web_accessible_resources en el manifiesto):
setTimeout(function() {
document.dispatchEvent(new CustomEvent('RW759_connectExtension', {
detail: GLOBALS // Send GLOBALS to the extension
}));
}, 0);
Ventajas del paso de mensajes
Los enfoques de paso de mensajes permiten una exposición limitada a la lógica de extensión de las páginas web y el acceso a funciones extendidas de la API de Chrome.
Conclusión
Al implementar estas técnicas, puedes acceder de manera efectiva a variables globales como GLOBALS desde el script de contenido de tu extensión de Chrome.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3