본문 바로가기

'.' Programs/HTML

iframe 에서 parent 접근시 권한 오류 해결 방법.

정말 어처구니 없는 이런 경우를 다른분들은 겪지 않길 바라며 포스트 합니다.

흔히 iframe 에서 부모 페이지 속성 접근 시 parent 를 사용해서 접근하게 되죠.


하지만 ie , 크롬 등.. 모든 브라우저에서 정상 작동하는데... 몇몇 pc 환경에서 유독 접근권한 스크립트 오류가 나는 문제가 발생하더군요.  이런경우 디버깅도 무척 힘들어서 해결하는데 상당한 시간을 소비하게 되죠.


예시.

- a.html

<html>

<head>

<script>

function aa(){

alert('test');

}

</script>

</head>

<body>

<iframe src="b.html"></iframe>

</body>

</html>



- b.html

<script>

parent.aa();  // 보통 부모페이지 속성 접근시 이렇게 사용 합니다.

</script>



위의 소스는 분명 잘 작동 할껍니다.

하지만 몇몇 pc환경에서 접근권한 스크립트 오류가 발생하는 경우.. 아래와 같은 방법을 사용하면 해결 됩니다.


- a.html

<html>

<head>

<script>

document.domain = "pet2r.com";

function aa(){

alert('test');

}

</script>

</head>

<body>

<iframe src="b.html"></iframe>

</body>

</html>



- b.html

<script>

document.domain = "pet2r.com";

   parent.aa(); 

</script>


문제 : 같은 도메인에 있는 페이지 임에도 도메인 인식을 못해서 parent 함수를 사용하지 못하더군요.

양쪽 페이지 스크립트 선언 부분에 같은 도메인 임을 인식하게 해주면.. 해결 됩니다.





''.' Programs > HTML' 카테고리의 다른 글

단축 도메인 URL 표기 방법.  (0) 2012.06.14
[HTML] anchor (앵커) 속성.  (0) 2012.05.02