2012-06-11 14 views
7

En una extensión de Chrome que estoy desarrollando, quiero acceder a una estructura de datos creada y mantenida en una página de fondo cuando se hace clic en la ventana emergente. Lamentablemente, soy nuevo en Javascript y en el desarrollo de la extensión de Chrome en general, ¿puedes decirme cómo hacerlo? ¿Esto implica pasar mensajes entre la ventana emergente y la página de fondo? Gracias.Cómo acceder al objeto en la página de fondo desde la ventana emergente en la extensión de Chrome

Respuesta

9

Puede escribir tres archivos como este para acceder a una estructura de datos en el background.html de su popup.html:


//in popup.html 
<script type="text/javascript" src="mainscript.js"></script> 
<!-- JavaScript and HTML must be in separate files for security. --> 

//in mainscript.js 
chrome.extension.getBackgroundPage().data = 'your data'; 

//in background.html 
<script type="text/javascript"> 
var data; 
</script> 

y necesita un manifest.json como este (tal vez use browser_action en lugar de page_action):

.... 
, 
"background_page": "background.html", 
"page_action": { 
    "default_icon": "your_icon.ico", 
    "default_title": "Your title", 
    "default_popup": "popup.html" 
    }, 
.... 

de edición: para el paso de mensajes en extensiones de cromo ver estas funciones

http://code.google.com/chrome/extensions/extension.html#method-sendRequest

http://code.google.com/chrome/extensions/extension.html#event-onRequest

y esta descripción útil:

http://code.google.com/chrome/extensions/messaging.html

Cuestiones relacionadas