웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
아래 새창에 맞게 이미지 띄우기 더더 업그레이드 판!
2002.12.09 20:53
1. 짤린 그림파일일때 메시지 띄우기
2. 너무 큰 (해상도보다 큰) 그림일 경우 작게 리사이즈 해서 보여주기 (그 후 원래 크기로 볼지 선택가능)
3. 기타등등 ..
[ps] 행복한고니님의 스크립트를 토대로 변형시켰음을 밝힙니다;
<script>
function imgPreview(img){
/* This Script by AT4u -/
/ EMail : atply@atply.com -/
/ HOME : http://atply.com -/
/ 배포시에는 절대로 이 카피라 -/
/ 트를 훼손하여선 안됩니다. */
// Orignal by 행복한고니(gonom9@empal.com)
var wdh ;
var hei ;
var T_Left;
var T_Top ;
var T_Wid ;
var T_Hei ;
var T_IsM ;
var T_IsMM;
var Temp = new Image();
Temp.src = img;
wdh = screen.width;
hei = screen.height;
if (Temp.width > wdh) {
T_Wid = wdh;
T_Left = 0;
T_IsM = 1;
} else {
T_Wid = Temp.width;
T_Left = (wdh - Temp.width) / 2;
}
if (Temp.height > hei) {
T_Hei = hei;
T_Top = 0;
T_IsM = 1;
} else {
T_Hei = Temp.height;
T_Top = (hei - Temp.height) / 2;
}
if (T_IsM) {
T_IsMM = "javascript:if (confirm('지금 보신 그림은 크기가 너무 커서 줄어든 그림입니다. 크게 보시겠습니까?nn확인 = 크게 보기, 취소 = 그냥 닫기')) { var ww = window.open('', 'AT4u_iPreBig', 'left=0,top=0,status=0,toolbar=no,scrollbars=yes,width="+(T_Wid + 17)+",height="+(T_Hei - 100)+",left="+T_Left+",top="+T_Top+"'); ww.document.writeln('+ '<HTML> <TITLE> Image Preview - Orignal Size </TITLE><STYLE> body {margin:0pt;} </style> <BODY><a href='javascript:self.close()'><img src='"+img+"' width="+Temp.width+" height="+Temp.height+" border=0></a></body></html>'); } self.close();";
} else {
T_IsMM = "javascript:self.close();";
}
var WindowT = window.open("","AT4u_iPre","width="+T_Wid+",height="+T_Hei+",left="+T_Left+",top="+T_Top+",status=no,toolbar=no,scrollbars=no,resizable=no");
WindowT.document.writeln("<HTML> <TITLE> Image Preview </TITLE><STYLE> body {margin:0pt;} </style> <BODY><a href=""+T_IsMM+""><img name='at4uPre' src='"+img+"' width="+T_Wid+" height="+T_Hei+" border=0 onerror="alert('그림 파일이 없습니다. 짤린 그림 파일 같습니다.'); self.close()"></a></body></html>");
}
</script>
2. 너무 큰 (해상도보다 큰) 그림일 경우 작게 리사이즈 해서 보여주기 (그 후 원래 크기로 볼지 선택가능)
3. 기타등등 ..
[ps] 행복한고니님의 스크립트를 토대로 변형시켰음을 밝힙니다;
<script>
function imgPreview(img){
/* This Script by AT4u -/
/ EMail : atply@atply.com -/
/ HOME : http://atply.com -/
/ 배포시에는 절대로 이 카피라 -/
/ 트를 훼손하여선 안됩니다. */
// Orignal by 행복한고니(gonom9@empal.com)
var wdh ;
var hei ;
var T_Left;
var T_Top ;
var T_Wid ;
var T_Hei ;
var T_IsM ;
var T_IsMM;
var Temp = new Image();
Temp.src = img;
wdh = screen.width;
hei = screen.height;
if (Temp.width > wdh) {
T_Wid = wdh;
T_Left = 0;
T_IsM = 1;
} else {
T_Wid = Temp.width;
T_Left = (wdh - Temp.width) / 2;
}
if (Temp.height > hei) {
T_Hei = hei;
T_Top = 0;
T_IsM = 1;
} else {
T_Hei = Temp.height;
T_Top = (hei - Temp.height) / 2;
}
if (T_IsM) {
T_IsMM = "javascript:if (confirm('지금 보신 그림은 크기가 너무 커서 줄어든 그림입니다. 크게 보시겠습니까?nn확인 = 크게 보기, 취소 = 그냥 닫기')) { var ww = window.open('', 'AT4u_iPreBig', 'left=0,top=0,status=0,toolbar=no,scrollbars=yes,width="+(T_Wid + 17)+",height="+(T_Hei - 100)+",left="+T_Left+",top="+T_Top+"'); ww.document.writeln('+ '<HTML> <TITLE> Image Preview - Orignal Size </TITLE><STYLE> body {margin:0pt;} </style> <BODY><a href='javascript:self.close()'><img src='"+img+"' width="+Temp.width+" height="+Temp.height+" border=0></a></body></html>'); } self.close();";
} else {
T_IsMM = "javascript:self.close();";
}
var WindowT = window.open("","AT4u_iPre","width="+T_Wid+",height="+T_Hei+",left="+T_Left+",top="+T_Top+",status=no,toolbar=no,scrollbars=no,resizable=no");
WindowT.document.writeln("<HTML> <TITLE> Image Preview </TITLE><STYLE> body {margin:0pt;} </style> <BODY><a href=""+T_IsMM+""><img name='at4uPre' src='"+img+"' width="+T_Wid+" height="+T_Hei+" border=0 onerror="alert('그림 파일이 없습니다. 짤린 그림 파일 같습니다.'); self.close()"></a></body></html>");
}
</script>
댓글 6
-
디아릭스
2002.12.16 01:40
-
한상욱
2003.01.05 21:47
그런데 한가지 문제가 있는듯 하네요..
포토샵에서 자동 앨범 만들기 기능을 한후에.. 작은이미지를 클릭하면 이미지 크기에 맞는 창으로 이미지를
띄우게 하려 했답니다..
위에 설명하신데로 했는데.. 이상한게 있네요..
작은이미지를 클릭하면 처음엔 화면가득 큰창 하나만 덩그러니 열리네요.
큰창 지우고 다시 방금전 클릭했던 작은 이미지를 클릭하니.. 재대로 열리는군요..
모든이미지들이 한번씩 그렇습니다...
처음눌렸을때는 큰창..(에러)... 다시 반복하면 정상...
왜 그럴까요? -
정지웅
2003.01.10 17:04
맞아여 이 기능 에러 있는기능인듯하네여... 결정적인 에러라서 쓸수가 없네여...
한상욱님 말처럼 첨에 큰창이 한번 떴다가 그창닫고 두번째 시도할때 부터 제대로 떠여... 져도 밑에 답글 올렸는데..
대답도 안해주시네여... 멜 까지 보냈는데 에러이다고..
해결이 안되나 보죠... -
김두영
2003.06.20 03:22
에러났을때 페이지 소스에서
Temp.width 나 Temp.height 값이 0으로 셋팅되더군요.
근본적인 해결책은 될 수 없지만 아니지만 공백페이지가 뜨는 것을 방지하게 하려면
var Temp = new Image();
Temp.src = img;
다음라인에
if (Temp.width == 0 ) return;
하시면 사용자가 한번 더 클릭 하면 제대로된 화면이 뜰겁니다.
제 생각은 함수값 넘겨주는부분 아니면, 인자생성시에 문제가 있지 않을까 합니다. -
띠엠므
2003.05.16 10:51
아래 행복한 고니님의 소스를 쓰려다가 여기에도 같은 문제가 발생하네요. 다들 같은 문제로 고민하시는 것 같은데
만들어 주신분들, AS좀 부탁드림 안될까영 ? ^^;
첨엔 이상하케 큰 공백으로 뜨다가 담부턴 정상적으로 뜨는 둥 불규칙적이게 공백이 뜨는 둥 자꾸 그러답니다. ^^ -
고냉이 콱!
2003.06.03 01:21
저도 같은오류 ㅡ.ㅡ 한번 불러들였던 이미지가 아니라면 빈 창으로 뜹니다
제목 | 글쓴이 | 날짜 |
---|---|---|
ie60이상버전의 개인정보기능으로 인한 서비스문제 [2] | 날파리 | 2003.05.21 |
[간단팁] 윈도우즈 2003 에서 mysql 사용할때.. [5] | 오종선 | 2003.05.22 |
[진자 유용한] www 자동으로 붙여주기 [6] | Dopesoul | 2003.05.24 |
APM_Setup4 에서 에러페이지 띄우기 [2] | RedEye(kaist) | 2003.05.28 |
아파치 보안취약점 관련 버전 업데이트 | DearMai | 2003.05.30 |
iis + php + mysql 강좌 (윈도우설치) [5] | 이성헌 | 2003.06.01 |
iis + php + mysql 보충설명. [2] | 이성헌 | 2003.06.01 |
아파치 버츄얼웹서버에서 웹로그 분석툴 : Webalizer 설치 [2] [1] | 정인배 | 2003.06.02 |
네임(DNS) 서버 named.conf 설정 하기 | 정인배 | 2003.06.02 |
아파치 : Name-based Virtual Host 사용하기 | 정인배 | 2003.06.02 |
아파치 : IP-based Virtual Host 사용하기 | 정인배 | 2003.06.02 |
Windows Media 서비스에 대한 ISAPI 확장 결함 | DearMai | 2003.06.03 |
apache + php + mysql (window 설치) | 이성헌 | 2003.06.05 |
mysql 강좌 .. 요약본 [4] | 이성헌 | 2003.06.05 |
php 와 mysql 을 이용한 웹인증..(윈도우에서) | 이성헌 | 2003.06.05 |
apache 서버에서 apache 인증 (윈도우에서 apm 설치후) | 이성헌 | 2003.06.05 |
apache 서버에서 디렉토리 보기 방지. [5] | 이성헌 | 2003.06.08 |
윈98에서 Apache+iASP+Tomcat4.x+Mysql+PHP ...사용하기 [5] | 한희진 | 2003.06.11 |
webalizer 윈도우+아파치에서 돌려보기 [3] [1] | HuHu^^; | 2003.06.12 |
극심한 시스템 파괴시 재해복구 Process [7] | Dopesoul | 2003.06.14 |
근데 무지 길군요.
암튼 감사히 쓰겠습니다.