2011-03-08 3 views
0

우리 웹 사이트는 페이지 (iframe 요소를 작성하고 내부에 내용을 렌더링하고 RSS, 이미지 및 기타 자료를 볼 수있는 자바 스크립트 조각)로 설치되는 위젯을 제공합니다.자바 스크립트 교차 도메인 문제

위젯이있는 페이지를 다른 위치로 리다이렉션하기 위해 사용자가 몇 가지 작업을 수행했지만, 위젯이 생성 한 페이지와 iframe이 다른 위치에 있기 때문에 top.document.location을 사용하는 것이 금지되어 있습니다. window.open은 일반적으로 팝업 차단기로 차단됩니다.

어떻게 할 수 있습니까?

답변

0

시도 : 허용되지

window.location.href = "url"; 
+0

아니요, 콘텐츠는 위젯에 의해 생성 된 iframe 내에로드됩니다. – FlamingMoe

0

top 창에서 속성을 읽기 있지만, 그들 중 일부는를 작성 에 열려 - 이들은 location입니다 중 하나.

단순히

top.location = "http://foo/bar"; 

을하고 그것을 잘 리디렉션합니다.

+0

고마워요. [그것은 분명 당신이 옳은 것처럼 보입니다] (http://stackoverflow.com/questions/952242/), 쓰기 전용 속성 (예 : MDC, W3C, Quirksmode, Wikipedia조차도)에 대한 신뢰할 수있는 문서를 찾을 수 없습니다.). 이것에 대한 공식 문서에 대한 링크가 있습니까? –

+0

@Matt, 아니요, W3 사양에 포함되지 않습니다. 다른 브라우저 공급 업체가 동일 원산지 정책을 구현했을 때 허용되는 동작입니다 (어떤 사양에도 포함되지 않음). 그러나 IE2-7의 FF2 및 window.opener에서 frameElement와 관련된 '버그'를 제외하고는 '위치'만 탐색 할 수있는 속성입니다. –

관련 문제