창닫기 되려면 어떤 코드가 좋을까요?
본문
http://happyjung.com/test_win.php
일반 페이지에서 창닫기를 하려고 합니다.
팝업이나 그외 새창으로 뭔가를 수행한후 그 창을 닫고자 할때가 있잖아요
위 링크에 일반적으로 많이 사용하는 코드를 나열해봤는데요
IE 에서는 모두 문제없이 되지만, 그외 브라우저에서는 작동을 하지 않아서요
범용적으로 잘 적용될 수 있는 창닫기 코드나 방법을 아시는분 공유 부탁드립니다.
답변 7
질문 본문에 팝업이나 그외 새창이라 되어있어서
직접 주소를 찍어보진 않았네요
구글에 검색해보니 보안때문에 크롬 정책인듯 하네요
그 외 브라우져라는게 ...
크롬 파폭 둘다 잘되는데요~!
버전 65.0.3325.51(공식 빌드) beta (64비트)
이것저것 몽땅 다 잘 먹힙니다.
팝업으로 처리하신것을 창닫기하실때
가급적 top.close()와 같은것은 피하시는게 좋습니다.
범용적인 함수로 만들어 사용할수가 없거든요
window 객체를 닫게 만드는게 상책입니다.
알려주신링크가 IE외의 다른브라우저에서 안먹는경우
컴 문제가 맞는거 같구요
다른 스크립트에 혼용된것이 안먹는경우는 스크립트 어딘가에서 문법오류라던지..이유가 있을것 같습니다.
F12 개발자도구로 잘 살펴보심이...
아아... 이유를 확인했습니다.
링크를 눌러서 열린 창 상태에서 닫기를 하면 정상작동하는데
링크를 복사해서 개별적으로 페이지를 열고, 그 상태에서 닫기를 누르면 오류가 뜨네요
즉, IE 는 부모창 여부와 관계없이 닫기를 수행하고
그외 것들은 부모창에서 링크를 통해서 열린 새창일때만 닫기가 수행되는....
링크를 통한 새창이 아닌, 그냥 브라우저 주소창에 입력후 페이지를 연 상태에서 닫기가 되도록 하려면
어떻게 하는것이 좋을까요?
<button id="btn_close" type="button">창닫기</button>
<script>
$(function() {
$("#btn_close").on('click', function() {
self.close();
});
});
</script>
를 추천합니다. http://jsunnylab.tistory.com/38
http://naradesign.net/wp/2007/07/11/123/
<a> 태그를 쓰고자 한다면,
<a href="#" onclick="javascript:self.close();">창닫기</a>
보다는
<a href="javascript:;" onclick="self.close();">창닫기</a>
를 추천합니다. 그누보드에서는 이방식을 많이 쓰더라구요.
!-->https://developer.mozilla.org/en-US/docs/Web/API/Window/close
function winClose() {
window.close();
}
로 안 닫힐경우
<html>
<head>
<script>
function closeMe() {
var win=window.open("","_self");
win.close();
}
</script>
</head>
<body>
<form>
<input type="button" name="Close" onclick="closeMe()" />
</form>
</body>
</html>
로 해보세요
출처 : https://groups.google.com/a/chromium.org/forum/#!topic/chromium-apps/vnRRgPhEXyc
!-->