답변:
window.top.location.href = "http://www.example.com";
앞에서 언급했듯이 부모 iframe을 리디렉션합니다.
sandbox
" -iframe 의 새로운 HTML5 속성 때문입니다. - developer.mozilla.org/ en-US/docs/Web/HTML/Element/iframe 이 sandbox
속성은 자바 스크립트가 iframe 기반의 특정 작업을 수행하지 못하게합니다. 허용 된 작업의 허용 된 화이트리스트 이 allow-top-navigation
속성은 화이트리스트에서 활성화 할 수있는 작업 중 하나이므로이 코드가 작동합니다. 경우 sandbox
속성이 abscent 모든 행동이 허용됩니다. 존재하고 빈 문자열이면 모든 작업이 거부됩니다.
나는 그것이 <a href="..." target="_top">link</a>
작동 한다는 것을 알았다
window.top.location.href = "http://example.com";
window.top
프레임 계층의 맨 위에있는 페이지의 창 개체를 나타냅니다.
또는 대안은 다음과 같습니다 (문서 객체 사용)
parent.document.location.href = "http://example.com";
parent.location.href = ...
. developer.mozilla.org/en/document.location
target="_parent"
나를 위해 일했다. 쉽고 번거 로움이 없습니다!
@MIP는 맞지만 최신 버전의 Safari에서는 iBox에 리디렉션 액세스 할 수 있도록 샌드 박스 속성 (HTML5)을 추가해야합니다. 공백 사이에 추가 할 수있는 몇 가지 특정 값이 있습니다.
참조 (스크롤해야 함) : https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
전의:
<iframe sandbox="allow-top-navigation" src="http://google.com/"></iframe>
sandbox
속성은의 콘텐츠에 대한 추가 제한 사항을 활성화합니다 <iframe>
. sandbox
속성 값 은 특정 제한을 제거합니다. 이 기능을 사용하여 조심하십시오. w3schools.com/tags/att_iframe_sandbox.asp
사용자가 별도의 조치를 취하지 않고 다른 도메인으로 리디렉션하려면 속성과 함께 링크를 사용할 수 있습니다.
target="_parent"
앞에서 말한 것처럼 다음을 사용하십시오.
document.getElementById('link').click();
자동으로 리디렉션되도록합니다.
예:
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<a id="link" target="_parent" href="outsideDomain.html"></a>
<script type="text/javascript">
document.getElementById('link').click();
</script>
</body>
</html>
참고 : 링크를 선언 한 후 javascript click () 명령을 사용해야합니다.
사용해보십시오
window.parent.window.location.href = 'http://google.com'
parent.location = 'url'
window.top.location.href = 'index.html';
주 창을 색인 페이지로 리디렉션합니다. 감사
iframe 액션에서 부모 윈도우를 리디렉션하려면 window.top.location.href를 사용해야합니다.
데모 URL :
IFrame
도. 허용되는 답변이 맨 위 창에 표시되므로 질문을 약간 변경하는 것이 좋습니다.