묻고답하기
jquery를 이용해 유동적 수직 가운데 정렬을 하려고 하는데
2013.03.05 19:13
기존의 방식인 top:50%; height: 400px; margin-top:-200px; 는 뷰 포트보다 높이가 크면 문제가 있고, height가 고정되어야 하는데요.
제가 만들려는 디자인은 ajax로 컨텐츠를 불러와 컨텐츠 내용에 따라서 wrapper의 height가 유동적으로 변경되어야 하기에 지정을 하지 않았습니다.
그후 wrapper의 세로 길이와 뷰 포트의 세로 길이를 측정하여 그 차수를 가지고 wrapper에 jquery로 자동으로 wrapper 레이어의 margin-top값을 변경하려고 합니다.
$(document).ready(function(){
var currentHeight = $(window).width();
$("body").chilgren("div").each(function(){
var wrapperHeight = $(this).height(); // wrapper의 height 구하
if (currentHeight < wrapperHeight)
{
newHeight = currentHeight - wrapperHeight;
newHeight = newHeight/2;
$(this).css('marginTop',newHeight);
}
});
});
이렇게 구성하고 적용을 했는데 변화가 생기지를 않는 겁니다.
그래서 currentHeight를 정의한 문장 아래에 alert나 InnerHTML 로 값을 가져오려고 했는데 동작을 안하더라구요.
즉, 저 jquery문이 통째로 동작을 하지 않는다는 건데 왜인지 원인을 모르겠습니다..
라이브러리는 jquery.com에서 1.7.2 버전으로 다운로드 받아 사용하고 있습니다.
다른 jquery문은 동작을 하는걸로 보아 라이브러리 로드가 실패한건 아닌듯 한데 원인을 알고자 합니다.