728x90
반응형
참고: https://www.scaler.com/topics/javascript-close-window/
때때로 우리가 연 브라우저 창을 닫아야 하는 경우가 있습니다. JavaScript를 사용하여 브라우저를 닫을 수 있지만 보안상의 이유로 사용자가 연 창이 아니면 닫을 수 없습니다. 이 포스트에서는 먼저 JavaScript 코드를 사용하여 새 창을 여는 방법을 알아보고 close() 메소드를 사용하여 새로 열린 창을 닫는 방법을 알아보겠습니다.
소개
여기서 주목해야 할 사항은 자바스크립트를 사용하여 열은 브라우저 창만 닫을 수 있다는 것입니다. 오늘날의 보안 표준은 사용자가 열은 브라우저 창은 코드로 닫을 수 없도록 합니다.
아래 단계는 스크립트를 사용하여 URL을 닫기 위해 URL을 여는 방법을 보여줍니다:
- JavaScript의 open() 메소드를 사용하여 새 브라우저 탭 열기: 먼저 window.open() 메서드를 사용하여 새 브라우저 창을 열어야 합니다. 이 메소드는 두 개의 인수를 사용합니다. 첫 번째 인수는 window 객체의 location 속성을 통해 접근할 현재 URL이고 두 번째 인수는 URL이 현재 탭에서 열릴지 말지를 전달할 대상 URL입니다.
- JavaScript의 close() 메소드를 사용하여 열린 창 닫기: 스크립트를 사용하여 새 브라우저 창을 열었으므로 window.close() 메서드를 사용하여 닫을 수 있습니다. 이 메서드는 인수가 없으며 호출된 탭을 닫습니다.
window.close()를 사용하여 브라우저 탭을 닫기
다음 프로그램은 위에서 설명한 내용의 데모입니다:
<!DOCTYPE html>
<html>
<head>
<Title>My Web Page</Title>
</head>
<body>
<p>
Click the button to close the current window.
</p>
<button onclick="return closeWindow();">Close</button>
<script type="text/javascript">
function closeWindow() {
let my_window = open(location, '_self');
setTimeout(function () {
my_window.close();
}, 1000);
return false;
}
</script>
</body>
</html>
close 버튼을 누르면 새 탭이 열리고 1초 뒤 닫힙니다.
설명: 먼저 HTML 문서를 만들고 body 태그 아래에 버튼을 클릭하여 창을 닫으라는 p 태그를 정의했습니다. 그런 다음 button을 정의하고 버튼을 클릭하면 실행할 onclick 리스너를 추가했습니다. 마지막으로 함수의 기능을 정의하는 JavaScript 코드 있습니다. 스크립트에는 변수 my_window를 정의하여 새 탭을 연 다음 1000 밀리초 후 close() 메소드를 사용하여 새 탭을 닫습니다.
정리
- 브라우저 창을 닫으려면 JavaScript의 close() 메소드를 사용 가능한데 새 창을 열은 경우에만 사용할 수 있습니다.
- 최신 보안상의 이유로 다른 브라우저 창을 닫을 수는 없습니다.
- 새 창을 열려면 JavaScript의 open() 메소드를 사용하면 됩니다.
- 이 창을 닫으려면 JavaScript의 close() 메소드를 사용합니다.
관련 글
반응형
'dev > javascript' 카테고리의 다른 글
[javascript] 반복문 루프 (while, for, for...of, for...in, loop) (3) | 2023.04.18 |
---|---|
[javascript] 자바스크립트 로그인 페이지 만들기 (login) (7) | 2023.04.16 |
[javascript] 자바스크립트 반응형 메뉴 (navigation bar) (5) | 2023.03.29 |
[javascript] 자바스크립트 apply() 사용 예제 (3) | 2023.03.28 |
[javascript] 자바스크립트 퍼센트, 백분율 구하기 (4) | 2023.03.24 |
댓글