0

GWT를 사용하여 Google 크롬에 firefox 확장 프로그램을 포팅했습니다. 링커에서Google 크롬 확장 프로그램에 대한 DOM 창 참조를 얻는 방법?

, 나는 $의 WND$의 문서 변수를 지정해야합니다.

파이어 폭스에서 이에는 다음과 같습니다

var $wnd = Cc["@mozilla.org/appshell/appShellService;1"].getService(Ci.nsIAppShellService).hiddenDOMWindow; 
var $doc = $wnd.document;  

속성 hiddenDOMWindow here 반환 (싱글) 응용 프로그램 숨겨진 창, 자동으로 생성이 AppShellService에 의해 유지되고 읽기 전용입니다 설명한다.

답변

2

Chrome 확장 프로그램의 백그라운드 스크립트는 항상 창 (백그라운드 창) 내에서 실행됩니다. 따라서 배경 스크립트에서 자신의 창에 액세스 할 수 있습니다.

var $wnd = window; 
var $doc = $wnd.document; 
+0

이렇게하면 배경 페이지의 문제가 해결됩니다. 콘텐츠 스크립트는 어떻습니까? 올바르게 이해하면 웹 페이지의 DOM을 공유합니다. 우리는 어떻게 싱글 톤 윈도우를 얻습니까? –

+0

@SaurabhAgarwal : 콘텐츠 스크립트는 다른 프로세스에서 실행되기 때문에 이미 백그라운드 페이지에 액세스 할 수 없습니다. 메시징을 사용해야합니다. –

0

chrome.extension API에 getViews() 메서드가 있습니다. 이 방법을 사용하여 창 문서를 가져올 수 있습니다.

관련 문제