Hintergrund Seite in Popup-Chrome-Erweiterung

8

Ich bette eine dynamische Webseite in ein Popup ein. Zur Zeit funktioniert es und jedes Mal, wenn das Popup geladen wird, wird die Webseite wieder geladen, wodurch ich die Arbeit, die ich auf der Webseite gemacht habe, im Popup verloren habe. Obwohl es in Ordnung ist, aber ich will, dass die Webseite im Hintergrund geladen bleibt und ich es nur im Popup auf Klick zeige. Um dies zu tun, kopierte ich den kompletten Code von meiner Popup-Seite (script + html) nach background.html. Nun, wie sollte ich auf die Seite vollständig im Popup zugreifen und direkt anzeigen (ich möchte auch HTML-Hintergrund-Seite anzeigen)

Danke

    
Himz 09.02.2011, 07:25
quelle

1 Antwort

13

Popups leben im selben Prozess (der Erweiterungsprozess) wie die Hintergrundseite und eine Seite kann das DOM-Fenster des anderen erhalten. Ein Popup ruft die Hintergrundseite durch Aufruf von chrome.extension.getBackgroundPage() ab. Jedes Mal, wenn Sie das Popup öffnen, lesen und schreiben Sie einfach eine Variable auf der Hintergrundseite, zum Beispiel chrome.extension.getBackgroundPage().enteredData = "value"; .

Alternativ können Sie HTML5 localStorage verwenden, um Variablen auch nach dem Herunterfahren des Browsers zu speichern. z.B. localStorage['enteredData'] = "value" .

    
yonran 09.02.2011, 12:39
quelle