본문 바로가기
Web/JAVASCRIPT

[BOM] 창 제어

by print_soo 2023. 7. 4.

1. Window open

: window.open 메소드는 새 창을생성한다.

<!DOCTYPE html>
<html>
<style>li {padding:10px; list-style: none}</style>
<body>
<ul>
    <li>
        첫번째 인자는 새 창에 로드할 문서의 URL이다. 인자를 생략하면 이름이 붙지 않은 새 창이 만들어진다.<br />
        <input type="button" onclick="open1()" value="window.open('demo2.html');" />
    </li>
    <li>
        두번째 인자는 새 창의 이름이다. _self는 스크립트가 실행되는 창을 의미한다.<br />
        <input type="button" onclick="open2()" value="window.open('demo2.html', '_self');" />
    </li>
    <li>
        _blank는 새 창을 의미한다. <br />
        <input type="button" onclick="open3()" value="window.open('demo2.html', '_blank');" />
    </li>
    <li>
        창에 이름을 붙일 수 있다. open을 재실행 했을 때 동일한 이름의 창이 있다면 그곳으로 문서가 로드된다.<br />
        <input type="button" onclick="open4()" value="window.open('demo2.html', 'ot');" />
    </li>
    <li>
        세번재 인자는 새 창의 모양과 관련된 속성이 온다.<br />
        <input type="button" onclick="open5()" value="window.open('demo2.html', '_blank', 'width=200, height=200, resizable=yes');" />
    </li>
</ul>
 
<script>
function open1(){
    window.open('demo2.html');
    <!-- 새 탭에 새 창이 열리게 된다. -->
}
function open2(){
    window.open('demo2.html', '_self');
    <!-- 현재 탭에서 새 창이 열리게 된다. -->
}
function open3(){
    window.open('demo2.html', '_blank');
    <!-- 새 탭에 새 창이 열리게 된다. -->
}
function open4(){
    window.open('demo2.html', 'ot');
    <!-- 동일한 이름의 창이 이미 있으면 해당 탭으로 이동하고 없다면 새 탭에 해당 창이 열린다. -->
}
function open5(){
    window.open('demo2.html', '_blank', 'width=200, height=200, resizable=no');
    <!-- 정해진 width, height에 맞춰서 새창이 열린다. -->
}
</script>
</body>
</html>

 

open5 실행결과


2. 새창에 접근

<!DOCTYPE html>
<html>
<body>
    <input type="button" value="open" onclick="winopen();" />
    <input type="text" onkeypress="winmessage(this.value)" />
    <input type="button" value="close" onclick="winclose()" />
    
    <script>
    function winopen(){
        win = window.open('demo2.html', 'ot', 'width=300px, height=500px');
    }
    function winmessage(msg){
        win.document.getElementById('message').innerText=msg;
    }
    function winclose(){
        win.close();
    }
    </script>
</body>
</html>

 

코드 실행 결과

 

'Web > JAVASCRIPT' 카테고리의 다른 글

[DOM] 제어 대상 찾기  (0) 2023.07.05
Document Object Model(DOM)  (0) 2023.07.05
[BOM] Navigator 객체  (0) 2023.07.04
[BOM] Location 객체  (0) 2023.07.03
[BOM] 전역객체 Window  (0) 2023.07.03