파일 #1에 이미지 파일을 올린후 이미지 화면 크기를... > 그누3질답

그누3질답

파일 #1에 이미지 파일을 올린후 이미지 화면 크기를... 정보

그누보드 파일 #1에 이미지 파일을 올린후 이미지 화면 크기를...

본문

게시판에 글을 올릴때 아래쪽 파일#1에 큰 이미지를 올린 후
내용을 볼때 이 이미지를 클릭하면 화면의 크기에 맞게 자동으로 이미지 크기가 조절되는데
스크롤 바가 생기면서 이미지 크기가 자동으로 조절 안되게 할려면 아래 소스를 어케 고쳐요?
gbview.skin.php의 위쪽에 있는 내용입니다.
if ($write[wr_html])
    $content = preg_replace("/(\<img)([^\>]*)(\>)/i", "\\1 name=target_resize_image[] onclick=image_window2(this) style='cursor:hand;' tmp_width=0 tmp_height=0 \\2 \\3", $content);
  • 복사

댓글 전체

어떤 스킨을 사용하시는데 위에 코드가 스킨 뷰 파일에 있죠..?

일단 어떤 스킨이든 상관은 없습니다..
그러나 위 코드를 바꿔줘야 겠죠..
갤러리 게시판용 스크립트로 이미지 윈도우 스크립트를 바꾸거나, 이미지 팝업 파일을 새로 만들거나 둘 중에 하나를 선택해야 겠죠..

일단 스크립트를 바꾼다고 가정하고 간단한 예제를 들어 보겠습니다.
아래 코드를 뷰 스킨에 넣고, 이미지 링크지 아래 스크립트 펑션을 호출하면 됩니다.
아래 예제에선 800*600 을 기준으로 합니다.  해당 크기를 넘어가면 스크롤바를 넣습니다.

<script language="JavaScript">
function showImgWin(imgName, imgWidth, imgHeight)
{
var wd;
var hg;
var svar;
if(imgWidth >= 800 && imgHeight >= 600){
wd = 820;
hg = 620;
svar = 1;
}else if(imgWidth >= 800 && imgHeight <= 600){
wd = 820;
hg = parseInt(imgHeight)+20;
svar = 1;
}else if(imgWidth <= 800 && imgHeight >= 600){
wd = parseInt(imgWidth)+20;
hg = 620;
svar = 1;
}else{
wd = imgWidth;
hg = imgHeight;
svar = 0;
}
var imageWin = new Object();
imageWin = window.open("", "imageWin", "width="+wd+",height="+hg+",scrollbars="+svar+",left=10,top=10");
imageWin.document.write("<html><body style='margin:0'>");
imageWin.document.write("<a href='#' onclick='window.close()'><img src='" + imgName + "' border=0 style='position:absolute;top:0pt;left:0pt;' alt='클릭하면 닫힙니다.'></a>");
imageWin.document.write("</body><html>");
imageWin.document.title = ("원본 이미지보기")
}
</script>

이미지 출력부분을 아래처럼 수정해서 위에 펑션을 호출하면 됩니다. (기존 갤러리에 있는 코드입니다.)
<?
$limg = $list[$i][file_image1];
if (file_exists($limg)) {
$size = getimagesize($limg);
echo "<a href=\"javascript:showImgWin('$limg', $size[0], $size[1]);\">";
}
?>
© SIRSOFT
현재 페이지 제일 처음으로