2009-11-30 1 views
3

필자가 작성한 Firefox 확장 프로그램에서 실제 확장 프로그램과 환경 설정 패널 모두에서 액세스 할 수있는 데이터가 포함 된 변수가 있습니다. 신장. Firefox가로드되면 내 확장 코드가 변수를 올바른 데이터로 초기화합니다. 그러나, 다른 XUL 파일에 포함되어있는 옵션 대화 상자를 불러와 동일한 변수를 사용하려고 시도하면 변수가 초기화되지 않았습니다. 내 확장 XUL 파일 모두 동일한 JavaScript 소스 파일을 사용하고 있지만 두 XUL 파일이 새 변수 사본을 초기화하는 것처럼 보입니다. 변수를 공유하려면 어떻게해야합니까?Firefox 확장 프로그램의 여러 부분에서 동일한 변수에 액세스하기

감사합니다.

답변

5

JavaScript code module을 만들어야합니다. 그 안의 모든 변수와 메소드는 그것을 포함하는 모든 위치에서 공유됩니다.

+0

내 코드 용 JavaScript 코드 모듈을 만들었는데, 작동하는 것처럼 보입니다. 그러나 모듈에 넣은 코드 중 일부에서는 DOMParser를 사용합니다. DOMParser를 사용하려고하면 모듈에 코드가 있으므로 이제 Firefox에서 DOMParser가 정의되지 않았다는 오류가 발생합니다. DOMParser를 사용할 수 있도록하려면 어떻게해야합니까? – Scott

+1

좋아, 알아 냈어. var parser = new DOMParser()를 말하는 대신 var parser = Components.classes [ "@ mozilla.org/xmlextras/domparser;1"] .createInstance (Components.interfaces.nsIDOMParser)를 사용해야합니다. – Scott