Front-end,  Javascript, Jquery,  Programming && WEB && APP

javascript – window.open

  • 기본 문법 window.open(url, name, specs, replace)
    • url – 이동할 url 지정
    • name – 생성된 팝업의 이름
      • _blank = 기본값, 새 창(o)
      • _self = 새 창의 띄우지 않고 현재 창에서 이동
      • _parent = 부모 프레임에서 새 창 생성 (부모 프레임이 없다면 _self와 같음)ㄴ
      • _top = 최상위 프레임에서 창 생성 (부모 프레임이 없다면 _self와 같음)
      • 임의값 = 임의값이 창의 이름이 되고 새 창을 생성
    • specs
      • channelmode = 전체 화면 여부 ( IE 동작 )
      • fullscreen = 전체 화면 여부
      • height = 창의 높이
      • width = 창의 넓이
      • left = window 상의 왼쪽에서의 거리 위치 값
      • top = window 상의 위쪽에서의 거리 위치 값
      • menubar = 메뉴바 사용 여부
      • resizable = 창의 사이즈 조절 가능 여부 ( IE 동작 )
      • status = 상태바 노출 여부
      • titlebar = 타이틀바 노출 여부
        • * 여부에 대한 응답 값은 모두 yes|no|1|0
    • replace (boolean 값) – 히스토리 목록에 새 항목을 만들지(false) 현재 항목을 대체할지(true) 지정
// 탭에 새 창 띄우기
window.open(url, '_blank');

// 창 이름 win, 창의 넓이 700px, 높이 500px의 창에 url 이동 화면의 띄움
window.open(url, "win", "width=700,height=500");

// 이 경우 url로 새 창이 생성되나 창 사이즈는 동작하지않음 width, height 함께 입력 필요
window.open(url, '_blank', "height=500,left=100,resizable=no", true);
  • 새 창 post – submit 기능 이용
// html code
<form name = "postForm">
   <input type="hidden" name = "postValue" />
</form>

// js code
function popupPost(){
   var post_form = $("form[name=postForm]");
   var url = "url 값";
   post_form.attr("action", url);
   post_form.attr("method", "post");
   post_form.attr("target", "popupForm");
   window.open("","popupForm", "width=500,height=400");
   $("input[name=postValue]").val("value");
   post_form.submit();
}

추가 참고 자료 : https://developer.mozilla.org/ko/docs/Web/API/Window/open

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.