이 소스는 src를 받아서 크기에 따라서 (width가 600이상과 이하) 에 따라서 화면의 가운데에서 이미지를 출력하고 이미지를 출력 할 경우에 종료됍니다.
<script language="JavaScript">
var imgObj = new Image();
var winl, wint, setCetner;
function showImgWin(src) {//출력할 주소
imgObj.src = src;
//alert("width : "+ imgObj.width)
setTimeout("createImgWin(imgObj)", 100);
}
function createImgWin(imgObj) {
if (! imgObj.complete) {
setTimeout("createImgWin(imgObj)", 100);
return;
}
if ( imgObj.width <600){ // 이미지의 width에 따른 분기문
alert("600이하 width : "+ imgObj.width+" height : " + imgObj.height);
//화면 중앙에 배치
winl= (screen.width-imgObj.width)/2;
wint= (screen.height-imgObj.height)/2;
//setCenter라는 곳에 설정값들을 저장한다.
setCenter = 'width=' + imgObj.width + ', height=' + imgObj.height+ ', ';
setCenter += 'top='+wint+', ';
setCenter += 'left='+winl+', ';
setCenter += 'resizable=yes';
alert(setCenter);
//설정되어진 값으로 새창을 생성한다.
var imageWin = window.open("", "imageWin", setCenter);
imageWin.document.write("<html><body style='margin:0'>");
//a tag를 이용해서 클릭시 창닫기 기능을 만든다.
imageWin.document.write("<a href='javascript:window.close()'><img src='" + imgObj.src + "' width=" + imgObj.width + ",height=" + imgObj.height+" ='javascript:imageWin.self.close();'></a>");
imageWin.document.write("</body><html>");
imageWin.document.title = imgObj.src;
} else {
var t_height= (imgObj.height*600) / imgObj.width;
winl= (screen.width-imgObj.width)/2;
wint= (screen.height-t_height)/2;
setCenter = 'width=600, height=' + t_height+ ', ';
setCenter += 'top='+wint+', ';
setCenter += 'left='+winl+', ';
setCenter += 'resizable=yes';;
alert("600이상 width : "+ imgObj.width+" height : " + t_height);
alert(setCenter);
var imageWin = window.open("", "imageWin", setCenter);
imageWin.document.write("<html><body style='margin:0'>");
imageWin.document.write("<a href='javascript:window.close()'><img src='" + imgObj.src + "' width=600, height="+t_height+" ='javascript:imageWin.self.close();'></a>");
imageWin.document.write("</body><html>");
imageWin.document.title = imgObj.src;
}
}
</script>