2013-05-29 4 views
3

안녕하세요, Firefox 부가 기능 SDK 전문가,Firefox 부가 기능 SDK : 콘텐츠 디렉토리의 데이터 디렉토리 아래에있는 HTML 및 이미지 파일에 액세스하십시오.

나는 다음과 같은 문제를 안고 있습니다.

내 콘텐츠 스크립트에서 추가 기능의 데이터 디렉터리 아래에 저장된 HTML 파일 및 이미지 파일 집합을 사용하여 UI를 그릴 필요가 있습니다.

self.data.url을 사용하여 main.js 파일 URL을 가져 와서 URL을 port.emit을 사용하여 콘텐츠 스크립트에 전달합니다. URL은 콘텐츠 스크립트에 의해 성공적으로 수신됩니다. 나는 콘텐츠 스크립트에서 데이터/HTML/myfile.html에을의 URL을 로그인하면

, 그것은 다음과 같습니다 자원 : //jid1-veokemuf24jrmw-at-jetpack/myaddon/data/html/myfile.html를

문제는 아무것도 나는이 같은 문서의 요소를 추가 할 때 발생하는 것 같다 것입니다 :

var a = this; 
a.el = $("<div />").attr("id", "topbar"); 
$("body").append(a.el); 
$("#topbar").load(html_url, function() {}); 

을하지만 경우에 작동 한 후 콘텐츠 스크립트 파일에서 HTML 코드를 복사하여 붙여 넣습니다.

또한 Firefox의 주소 입력란에 html 파일 URL을 붙여 넣으면 괜찮습니다.

내 솔루션이 작동하지 않는 근본적인 것이 있습니까? 또는 콘텐츠 디렉토리에서 데이터 디렉토리의 파일에 액세스 할 수 있도록 내 추가 기능에 대한 일부 권한을 정의해야합니까?

모든 도움을 주실 수 있습니다.

+0

html이 패널에 표시됩니까? 또한 fyi 데이터에서로드 된 html 파일에서 참조되는 모든 리소스는 상대 URL을 사용할 수 있습니다. 예를 들어 index.html이있는 경우 ./some-image.png를 통해 동일한 디렉토리의 이미지를 참조 할 수 있습니다. – canuckistani

+0

빠른 응답 주셔서 감사합니다 답장 canuckistani. 아니요, 패널에 없습니다. html은 page-mod를 통해 페이지에 추가됩니다. See, add-on은 현재 페이지 상단에 몇 가지 추가 UI를 그리기 위해 일부 JavaScript를 페이지에 삽입합니다. 이제 이미 이미지 (png)를 페이지에로드하고 그려 넣을 수 있으므로 추가 기능의 데이터 폴더 콘텐츠는 콘텐츠 스크립트에서 액세스 할 수 있습니다. 이제 JQuery.load ()가 아무 것도하지 않는다는 것입니다. 예외는 없습니다. 아무 일도 일어나지 않습니다. – mikko76

+0

JQuery.load가 콜백 함수의 매개 변수 (xhr.statusText) 내에 "액세스가 제한된 URI 거부되었습니다"(코드 1012) 오류가 있음을 알았습니다. 지금 나는 그것에 대해 할 수있는 일이 있는지 알아 내려고 노력 중입니다. – mikko76

답변

0

나는 우리 서버에 HTML 콘텐츠를 포기했습니다. 이제 Fancybox 및 콘텐츠 스크립트에서 완전히 다른 문제가 발생했습니다.