2009-10-26 6 views
4

iframe을 연 후 가끔이를 닫아야합니다. 지금까지 부모 노드에서 iframe을 제거하여 DOM에서 잘라냅니다. 그러나,이 즉시 iframe 수명을 끝내지 않는 것을 알면, 해당 자바 스크립트 코드는 더 이상 이러한 콜백을 기대하지 않는 부모 창으로 여전히 호출 할 수 있습니다.iframe을 닫는 방법?

어떻게 죽은 iframe을 죽일 수 있습니까? 나는 그것에 가까운 방법이나 파괴 방법을 보지 못했다.

답변

7

사이트에 blank.htm 파일을 만듭니다. IFrame SRC를 blank.htm으로 설정 한 다음 IFRAME을 제거하십시오.

+0

내가 그 숨겨진 iframe을 이후 즉, 내 사이트에 존재하지 않고 404 중요하지 않을 경우에도 blank.htm하기 위해 iframe이를 보낼 수있을 것 같아요. 감사. –

+0

440은 더 비쌉니다. 일반적으로 404는 중요한 응답 본문을 가지며 이미지 등을 참조 할 수도 있습니다. 또한 캐시 할 수도 없습니다. 빈 Blank.htm을 사용하면 서버로의 왕복이 전혀 없거나 404보다 비용이 적게 듭니다. – AnthonyWJones

+0

좋은 지적입니다. "about : blank"는 어떨까요? 나는 Internet Explorer와 Chrome에서이를 시도해 보았고 서버에 대한 호출 없이도이 두 가지를 모두 처리했습니다. –

0

jQuery를 사용하는 경우 $ .remove ('iframe object id') 메소드를 사용할 수 있습니다. 이렇게하면 페이지에서 DOM 객체가 제거되고이 iframe은 제거됩니다.

+0

jQuery 문서에 따르면 제거 방법은 다음과 같아야합니다. '$ ('# iframeObjectId '). remove()'http://api.jquery.com/remove/ – Jon

+0

감사합니다! 존. 내 의견은 2012 년에 작성되었으며 그 해 jQuery 버전과 관련된 구문이 있습니다. 현재 jQuery 버전에 맞습니다. – kadalamittai

0

이 시도 ..

<a href="Home.html" target="_parent"> 
+0

고마워,하지만 링크가 아닌 스크립트가 필요해. 그리고 이것은 부모 페이지를 닦을 것입니다. 나는 원하지 않습니다. –