브라우저 "창닫기" 버튼 만들기 > 기술자료 | 해피정닷컴

브라우저 "창닫기" 버튼 만들기 > 기술자료

본문 바로가기

사이트 내 전체검색

브라우저 "창닫기" 버튼 만들기 > 기술자료

JavaScript 브라우저 "창닫기" 버튼 만들기

페이지 정보


본문

홈페이지에서 공지사항이나 이벤트와 같은 창이 열리고, 그 창에서 "닫기" 버튼을 클릭하면 창이 사라지는 기능입니다.

샘플 : https://www.happyjung.com/demo/php/test_win.php  의 주소를 클릭해서 접속하면 창닫기가 잘 됩니다.
링크를 복사해서 브라우저 창에 붙여 넣고 페이지를 열면 창닫기가 작동 안하는 경우가 있습니다.

IE 는 부모창 없이 창닫기 페이지가 독자적으로 접근한 경우에도 페이지 닫기가 가능합니다.
Chrome , FF 등은 독자적인 창닫기 가 불가능하며 그이유는 다음과 같습니다.
Scripts may close only the windows that were opened by it.


1. History 활용  
부모창 있을때 창닫기 : 정상 ( IE 11 , Edge , FireFox , Chrome , Opera , Safari )
부모창 없을때 창닫기 : 정상 ( IE 11 , Edge , Safari )

<script type="text/javascript">
function closeWin() {
    var nvua = navigator.userAgent;
    if (nvua.indexOf('MSIE') >= 0){
        if(nvua.indexOf('MSIE 5.0') == -1) {
            top.opener = '';
        }
    } else if (nvua.indexOf('Gecko') >= 0){
        top.name = 'CLOSE_WINDOW';
        wid = window.open('','CLOSE_WINDOW');
    }
    top.close();
}
</script>
<a href="#" onclick="javascript:history.onclick=closeWin();">닫기</a>


2. A 링크 활용  
부모창 있을때 창닫기 : 정상 ( IE 11 , Edge , FireFox , Chrome , Opera , Safari )
부모창 없을때 창닫기 : 정상 ( IE 11 , Edge , Safari )

<a href="#" onclick="javascript:window.close();">창닫기</a>

<a href="#" onclick="javascript:self.close();">창닫기</a>

 
3. 버튼 활용   
부모창 있을때 창닫기 : 정상 ( IE 11 , Edge , FireFox , Chrome , Opera , Safari )
부모창 없을때 창닫기 : 정상 ( IE 11 , Edge , Safari )

<input type="button" value=" 창닫기 " onclick="window.close();">

<input type="button" value=" 창닫기 " onclick="window.open('','_self').close();">

<script>
function closeMe() {
    var win=window.open("","_self");
    win.close();
}
</script>
<input type="button" name="Close" onclick="closeMe()" value=" 창닫기 ">

<script>
function quitBox(cmd) {   
    if (cmd=='quit') {
        open(location, '_self').close();
    }   
    return false;   
}
</script>
<input type="button" name="Quit" id="Quit" onclick="return quitBox('quit');" value=" 창닫기 ">


4. jQuery 활용
부모창 있을때 창닫기 : 정상 ( IE 11 , Edge , FireFox , Chrome , Opera , iPhone Safari , iPhone Chrome )
부모창 없을때 창닫기 : 정상 ( IE 11 , Edge , Safari )

<script src="//code.jquery.com/jquery-1.8.3.min.js"></script>
<button id="btn_close" type="button">창닫기</button>
<script>
$(function() {
    $("#btn_close").on('click', function() {
        self.close();
    });
});
</script>


5. 프레임셋 문서를 이미지클릭으로 닫기
 <a href="#" onclick="javascript:top.window.close();"><img border="0" src="../close.gif"></a>
 

6. 프레임셋 문서 전체닫기
 <a href="javascript:top.window.close();">창닫기</a>


7. 프레임셋 문서를 버튼클릭으로 닫기
 <input type="button" value=" 창닫기 " onclick="top.window.close()">



8. 부모창 닫기
 <a href="#" onclick="javascript:parent.close();">부모창 닫기</a>



참고자료
http://www.ddalchi.co.kr/ddart/cgi-bin/ddbread.cgi?db=bbs_06&anum=39&page=1
http://www.dbinfo.co.kr/bbs/board.php?bo_table=dbinfo_html_javascri&wr_id=31
http://luvbaby.tistory.com/96
https://code.i-harness.com/ko/q/12d8859

댓글목록

등록된 댓글이 없습니다.


Total 152건 6 페이지
  • RSS
기술자료 목록
52
JavaScript   18842  2009-04-28 11:26 ~ 2011-06-29 00:00  
51
JavaScript   19234  2009-04-20 12:55  
50
JavaScript   19271  2009-03-12 23:40 ~ 2009-03-13 00:00  
49
JavaScript   12390  2009-02-12 19:05 ~ 2009-02-11 00:00  
48
JavaScript   22863  2009-01-28 22:26 ~ 2018-07-16 18:50  
47
JavaScript   19737  2009-01-22 20:55  
열람
JavaScript   58320  2009-01-06 19:36 ~ 2021-10-22 00:31  
45
JavaScript   13300  2009-01-04 00:00  
44
JavaScript   16502  2008-12-18 09:08 ~ 2009-08-06 00:00  
43
JavaScript   25017  2008-06-04 12:18  
42
JavaScript   13764  2008-05-15 21:00  
41
JavaScript   13206  2008-05-01 05:47  
40
JavaScript   16706  2007-12-13 10:32 ~ 2013-09-02 00:00  
39
JavaScript   13755  2007-12-13 10:27  
38
JavaScript   23697  2007-11-20 22:03 ~ 2018-08-02 15:53  
37
JavaScript   21343  2007-06-29 20:47 ~ 2021-03-04 09:19  
36
JavaScript   24219  2007-06-28 14:40 ~ 2017-11-09 02:12  
35
JavaScript   21907  2007-04-21 11:59 ~ 2022-11-22 12:11  
34
JavaScript   18859  2007-03-22 19:36 ~ 2007-03-25 00:00  
33
JavaScript   14459  2007-01-18 23:54  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.