[펌글] 팝업 리사이즈 방법 (resizeBy, resizeTo)

By | 2월 16, 2010

- 출처 : http://taizyeris.tistory.com/241 -

팝업을 띄울때 팝업에 실제와 같은 사이즈를 주어서 띄워도,
sp2에서 팝업창 아래 상태바가 있는 경우와 그외의 os에서 상태바가 없는 경우 창 안의 내용들이 달라 보이는 경우가 있다.

또한 앞으로 나올 IE7의 경우에는 창 상단에 주소까지 나와서 많이 틀려보이는 경우가 발생한다.
이때 다음과 같은 스크립트를 사용하여 onload에 넣어주면, 상당히 깔끔한 window resize가 된다.

function winResize()
{
    var Dwidth = parseInt(document.body.scrollWidth);
    var Dheight = parseInt(document.body.scrollHeight);
    var divEl = document.createElement("div");
    divEl.style.position = "absolute";
    divEl.style.left = "0px";
    divEl.style.top = "0px";
    divEl.style.width = "100%";
    divEl.style.height = "100%";

    document.body.appendChild(divEl);
    window.resizeBy(Dwidth-divEl.offsetWidth, Dheight-divEl.offsetHeight);
    document.body.removeChild(divEl);
}

* resizeTo는 창의 전체 크기값을 입력받지만 resizeBy는 창크기 증감분의 값을 입력받기 때문에 
  이러한 처리가 가능하다.

* 경험 Tip : 팝업 내부 테이블의 height 변화로 인해 위 스크립트로 리사이즈를 해 주었을 때 일정 범위까지는
                   정확히 맞는데 어느 height 이상을 넘어가면 정확히 맞지 않는 현상이 있었다.
                  => 최초 window.open 시의 height를 재조정(좀 더 크게) 하니 해결되었다.

* 기타 resizeTo 관련 링크

  http://blog.naver.com/PostView.nhn?blogId=gn0908&logNo=110078660722
  http://ngweb.tistory.com/92

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments