2013-03-04 3 views
1

에 주사한다 스크립트에서 창 개체를 전달 페이지를 global.html에 주사한다 스크립트에서 창 개체를 전달할 수있는 방법이 있나요, 내가 글로벌 페이지에 객체의 일환으로 창을 통과하는 것을 시도하고있다사파리 확장 : 글로벌 페이지

, "load"listener 함수에서 메시지를 발송하려고 시도 할 때 유형 오류가 발생합니다.

다음은 코드입니다.

window.addEventListener("load", onDocLoad); 

function onDocLoad() 
{ 
    var msg = new Object(); 

    msg.url = window.location.href; // this all works 
    ..... 
    msg.win = window; // With this it throws type error on line safari.self.tab.dispatchMessage("XXX",msg); 
    safari.self.tab.dispatchMessage("XXX",msg); 
} 

메시지 발송 작업 및 기타 데이터는 window 객체에 대한 오류없이 전달 될 수 있습니다. 어떻게해야합니까? 문서가 말한대로

답변

1

당신의 HtmlWindow 같은 객체를 전달할 수 없습니다 :

메시지 데이터는 하나의 데이터 형식에 제한되지 않는다; 부울, 숫자, 문자열, 배열, RegExp 객체 또는 구조화 된 복제 된 데이터를 안전하게 전달하기위한 W3C 표준을 준수하는 객체 일 수 있습니다. 명령에 데이터가 필요없는 경우 널 (null), 정의되지 않 음 또는 공 i으로 남겨 둘 수 있습니다.

관련 문제