JavaScript

[Window] JS - open() 메서드 ★★★★★ - 팝업창 열기. (= open메서드 = 오픈메서드) + ( 새탭, 새창, 팝업창) 띄우기. ※ window.open 윈도우오픈 = 버튼/링크 클릭 시 새탭열기/새창열기/링크이동 ※창사이즈

목차

  1. open() 예제 - 새탭/팝업창 띄우기
  2. open() 정의
  3. open() 구문
  4. open() 예제 - 팝업창 작업가능한 최대창으로 열기
  5. open() 예제 - 지정 크기의 빈 팝업창 띄우기
  6. open() 예제 - 빈 팝업창 띄운 후, 메세지 넣기
  7. open() 예제 - 새창으로 현재창 대체
  8. open() 예제 - 창크기 조절 가능한 팝업창 띄우기
  9. open() 예제 - 여러 탭 (= 멀티탭, multitab) 띄우기
  10. open() 예제 - 띄운 팝업창 닫기
  11. open() 예제 - name 속성 (= 새창 이름 반환)
  12. open() 예제 - opener 속성 (= 부모창 지칭)
  13. open() 예제 - 링크된 이미지를 팝업창으로 띄우기

 

open() 예제 - 새탭/팝업창 띄우기

[예제1] - 새 탭으로 열기 

 

<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  window.open("https://homzzang.com");

}

</script>

 

결과보기


[예제2] - 지정 크기의 팝업창으로 열기

 

<a href="javascript:;" onclick="homzzang();">홈짱닷컴 Homzzang.com</a>


<script>

function homzzang() {

    window.open('https://homzzang.com', 'window', 'width=300, height=300, menubar=no, status=no, toolbar=no'); 

}

</script>

결과보기 

 

open() 정의

 

(새탭/새창) 열기.

 


 

1.

열리는 방식은 브라우저 설정 및 매개변수에 따라 결정됨.

 

2.

close() 메서드 : 열린 창 닫기.

 

 

open() 구문

 

window.open(URL, name, specs, replace)

 


[매개변수]


URL
선택. 열 페이지의 URL을 지정. 

  • URL을 지정하지 않으면 about :blank 인 새창이 열림.
  • 따옴표로 감싸줌.

 

 

name
선택. 창을 어디에 열지 아래 값을 따옴표로 감싸서 지정. 예제보기

  • _blank  - URL을 새탭에 로드. (기본값)
  • _parent - URL을 부모 프레임으로 로드.
  • _self - URL을 현재 페이지에 로드.
  • _top - URL을 최상단 프레임에 로드
  • name - 해당 이름의 윈도우창에 로드. (※ 이 이름이 윈도우창의 타이틀 지정하는 건 아님.)

 

specs 

선택. 창 띄우는 방식. (여러 가능값 나열하려면, 공백 없이 쉼표(,)로 구분 나열하고, specs 전체를 따옴표로 감싸면 됨. 예: 'popup=1, width=400, height=600') (※ 가능값 종류) 

  • channelmode = yes | no | 1 | 0 - 창을 극장 모드로 표시할지 여부. (기본값: no). (IE 전용)
  • directories = yes | no | 1 | 0 - 폐기완료. 디렉토리 버튼을 추가할지 여부. (기본값: yes) (IE 전용) 
  • fullscreen = yes | no | 1 | 0  - 브라우저를 전체 화면 모드로 표시할지 여부. (기본값: no). (IE 전용) / 전체 화면 모드의 창은 극장 모드여야 함.  
  • height = pixels - 윈도우의 높이. (최소값: 100) / 단위 기재 X 
  • left = pixels - 창의 왼쪽 위치. (음수: 허용 X) / 단위 기재 X 
  • location = yes | no | 1 | 0 -  - 주소 필드 표시 여부. (Opera 전용)
  • menubar = yes | no | 1 | 0 - 메뉴 표시 줄 표시 여부 
  • popup = yes | no | 1 | 0 - 최소한의 팝업창 사용 여부 / (경고: 최신 브라우저에는 팝업 차단기가 내장되어 있어 이러한 팝업이 열리지 않음. 사용자가 브라우저 세팅을 변경해야 팝업 열림. ㅡㅡ;)
  • resizable = yes | no | 1 | 0  - 윈도우 크기를 재조정 할 수 있는지 여부. (IE 전용) 
  • scrollbars = yes | no | 1 | 0 - 스크롤 막대를 표시할지 여부.  (IE, Firefox, Opera 전용.)
  • status = yes | no | 1 | 0  - 상태 표시 줄 추가 여부 
  • titlebar = yes | no | 1 | 0 - 제목 표시 줄을 표시할지 여부. / 호출 응용 프로그램이 HTML 응용 프로그램이거나 신뢰할 수있는 대화 상자 아니면 무시. 
  • toolbar = yes | no | 1 | 0  - 브라우저 도구 모음을 표시할지 여부. / IE, Firefox 전용 
  • top = pixels  - 창의 상단 위치. (음수값: 허용 X) / 단위 기재 X 
  • width = pixels  - 창의 너비. (최소값: 100) / 단위 기재 X

 

replace
폐기예고(Deprecated). 선택. URL에서 새 항목을 만들지 또는 기록 목록에서 현재 항목을 바꿀지 지정. (경고: 이 매개변수 사용 시, 크롬에서 exception 발생.) (가능값 종류) 

  • true - 기록 목록의 현재 문서를 URL로 바꿈.
  • false - URL이 기록 목록에 새 항목을 만듦.

 


[반환값]

 

  • 성공 시, 새로 생성된 윈도우창 참조 반환.
  • 실패 시, null 반환.

 

 

open() 예제 - 팝업창 작업가능한 최대창으로 열기

 

window.open(src, "newWin", "width="+screen.availWidth+",height="+screen.availHeight)


 

open() 예제 - 지정 크기의 빈 팝업창 띄우기

 

<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var hz = window.open("", "", "width=200,height=100");

}

</script>

 

결과보기

 

open() 예제 - 빈 팝업창 띄운 후, 메세지 넣기

 

<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var hz = window.open("", "hz", "width=200,height=100");

  hz.document.write("<p>홈짱닷컴 Homzzang.com</p>");

}

</script>

 

결과보기

 

open() 예제 - 새창으로 현재창 대체

 

<p>홈페이지 제작관리 강의</p>


<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var hz = window.open("", "_self");

  hz.document.write("<p>홈짱닷컴 Homzzang.com</p>");

}

</script>

 

결과보기

 

open() 예제 - 창크기 조절 가능한 팝업창 띄우기

 

<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  window.open("https://homzzang.com", "_blank", "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=400,height=400");

}

</script>

 

결과보기

 

open() 예제 - 여러 탭 (= 멀티탭, multitab) 띄우기

 

<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  window.open("http://homzzang.com/");

  window.open("https://sir.kr/");

}

</script>

 

결과보기

PS. 주의: 크롬 경우, 첫 번째 창만 제대로 뜨고, 두 번째 창부터는 현재창의 브라우저 URL 오른쪽의 팝업 제한 아이콘 클릭해 해제해줘야 정상적으로 뜸.

 

open() 예제 - 띄운 팝업창 닫기

 

<button onclick="homzzang()">열기</button>

<button onclick="closeWin()">닫기</button>


<script>

var hz;

function homzzang() {

  hz = window.open("", "hz", "width=200,height=100");

  hz.document.write("<p>홈짱닷컴 Homzzang.com</p>");

}

function closeWin() {

  hz.close();

}

</script>

 

결과보기

 

open() 예제 - name 속성 (= 새창 이름 반환)

 

<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var hz = window.open("", "홈짱", "width=200,height=100");

  hz.document.write("<p>현재창이름: " + hz.name + "</p>");

}

</script>


결과보기

 

open() 예제 - opener 속성 (= 부모창 지칭)

 

<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var hz = window.open("", "hz", "width=200,height=100");

  hz.document.write("<p>홈짱닷컴 Homzzang.com</p>");

  hz.opener.document.write("<p>내가 니 주인이다.</p>");

}

</script>

 

결과보기

 

open() 예제 - 링크된 이미지를 팝업창으로 띄우기

 

<script src="http://code.jquery.com/jquery-latest.js"></script>

<script>

$(function() {

    $('a').on('click', function() {

        //var _url = $(this).attr('href');

        //window.open(_url);

        var img = $(this).find('img').attr('src');

        window.open(img, "hz", "width=100,height=100");    

        return false;                        

    });

});

</script>


<a href="#"><img src='https://i.imgur.com/PQNhCln.gif'><a>

 

결과보기

마르스컴퍼니 님 (210402) https://sir.kr/qa/406736

방문 감사합니다. (즐겨찾기 등록: Ctrl + D)

분류 제목
Basic JS - Home (JS입문) + Javascript Framework (프레임워크) 종류
Basic JS - Intro (JS소개)
Basic JS - Where To (JS위치) - JS구문 / JS코드위치 / JS사용법 ※ JS외부링크 주의사항
Basic JS - Output (JS출력= JS쓰기) ★★★★★
Basic JS - Syntax (JS구문) ★
Basic JS - Statement (JS구문= JS명령문)
Basic JS - Comment (JS주석)
Basic JS - Variable (JS변수) ★★★★★
Basic JS - Operator (연산자) - JS연산자 ★★★★★
Basic JS - Data Type - 데이터유형 ★★★★★ (= 데이터형식 = 데이터타입 = 데이터종류 = 자료형…
Basic JS - Function - JS함수 ★★★★★ ※ 일반함수 특징 2
Basic JS - Object - JS객체 ★★★★★
Basic JS - Scope - JS유효범위 (= JS접근범위 = 변수 종류) ★★★★★★★★★★
Basic JS - Event - JS이벤트 (= JS코드실행방법) ★★★★★
Basic JS - Strings - JS문자열
1/89
목록
 홈  PC버전 로그인 일본어
웹디자인언어 1
서버관리언어
고급코딩언어
그누보드
제작의뢰
Q&A
커뮤니티 2
웹유틸
회원센터
홈짱 PC버전 로그인