<?
//-----------------------------------------------------
//pic_name[] php변수에 이미지 경로를 담아둡니다.
//msg[] php변수에는 코멘트를 담아둡니다. (본 소스에서는 그냥 순차적으로 부여했습니다.)
//------------------------------------------------------
//이미지 경로를 지정
$pic_name[1]="s3_11.jpg";
$pic_name[2]="s3_13.jpg";
$pic_name[3]="s3_14.jpg";
$pic_name[4]="s3_2.jpg";
$pic_num=4;//이미지 갯수를 지정
//크기 줄이기 함수
function SmartResize($file,$size) {
$fsize = getimagesize($file);
$fsize = ($fsize[0] >= $size) ? $size : $fsize[0];
return $fsize;
}
//이미지 슬라이더
echo"
<script>
var doing = 'true';//마우스 온 후 다시 아웃할때 액션을 유지
var slide = 'true';//슬라이드쇼 할 것인지 체크
var first ='true';//처음으로 로드하는 것인지 체크
var preLoad = new Array();
if(!imgNo) var imgNo=0;//몇번째 이미지 인지 지정
var msg=new Array();
var imgwidth=new Array();
var imgw=new Array();
var imgh=new Array();
var img = new Array(); // 사용할 이미지 파일을 설정 하세요
";
for( $i=1;$i<=$pic_num;$i++) {
echo"msg[$i] ='$i 번째 이미지';\n";
$imgsize=getimagesize('file/'.$pic_name[$i]);
$imgwidth[$i] = SmartResize('file/'.$pic_name[$i],500);
echo"imgwidth[$i] = '$imgwidth[$i]';\n
imgw[$i]='$imgsize[0]'\n
imgh[$i]='$imgsize[1]'\n";
echo"img[$i] = 'file/$pic_name[$i]';\n";
}
echo"
var imgnum = img.length-1; //이미지 갯수 설정(배열이0부터 시작하기 때문에 1일 뺌)
for (i = 0; i <=imgnum; i++)
{
preLoad[i] = new Image();
preLoad[i].src = img[i];
}
//이전 이미지 함수
function prev(){
if(imgNo=='1') {
imgNo=imgnum;
}
else {
imgNo=imgNo-1;
}
if (slide=='true') {
document.imgNo.filters.blendTrans.apply();
}
document.imgNo.src=preLoad[imgNo].src;
imgmessage.innerHTML=''+msg[imgNo]+'';
document.imgNo.width=imgwidth[imgNo];
imgno.innerHTML=''+imgNo+'/'+imgnum+'';
if (slide=='true') {
document.imgNo.filters.blendTrans.play();
}
}
//다음 이미지 함수
function next(){
if((imgNo==imgnum)||(first=='true')) {
imgNo=1;
}
else {
imgNo=imgNo+1;
}
if (slide=='true') {
document.imgNo.filters.blendTrans.apply();
}
document.imgNo.src=preLoad[imgNo].src;
imgmessage.innerHTML=''+msg[imgNo]+'';
document.imgNo.width=imgwidth[imgNo];
imgno.innerHTML=''+imgNo+'/'+imgnum+'';
if (slide=='true') {
document.imgNo.filters.blendTrans.play();
}
}
//핫키 체크
function checkHotkey(){
if(slide!='true'){
if ( (event.srcElement.tagName != 'INPUT') && (event.srcElement.tagName != 'TEXTAREA') ){
if(event.keyCode=='65'||event.keyCode=='97'){ //d와 D는 앞으로
slide='false';
prev();
}
if(event.keyCode=='68'||event.keyCode=='100'){ // a와 A는 뒤로
slide='false';
next();
}
}
}
}
document.onkeypress=checkHotkey;
//마우스 온 및 온로드 함수
function mouseon() {
if (doing=='true') {
slide='true';
next();
setTimeout('mouseon()', 3500);
}
else {doing='true';}
first=false;
}
//이미지 뛰우기
function openimg() {
var x = (screen.availWidth - (parseInt(imgw[imgNo])+40)) / 2;
var y = (screen.availHeight - (parseInt(imgh[imgNo])+35)) / 2;
var myWin = window.open(img[imgNo],'','width='+(parseInt(imgw[imgNo])+40)+',height='+(parseInt(imgh[imgNo])+35)+',top='+y+',left='+x+',resizable=yes,scrollbars=yes');
}
</script>
<body onload=mouseon()>
<div id=imgno></div>
<a href='javascript:openimg()'><img name='imgNo' src='file/$pic_name[1]' style='filter: blendTrans(duration=2);cursor:hand;' onmouseover='javascript:doing=false;slide=false'; onmouseout='mouseon()'></a>
<div id=imgmessage></div>";
?>
'PHP' 카테고리의 다른 글
★ php ★ PHP 메뉴얼 (0) | 2011.05.11 |
---|---|
★ php ★ php 자동새로고침은 안되나요? (0) | 2011.05.11 |
★ php ★ PHP 예제] 다음줄로 줄바꿈 문자 넣기, 엔터 키(Enter) 치기; Newline Char (0) | 2011.05.11 |
★ php ★ php 나 js 에서는 \n 요놈이 줄바꿈입니다 (0) | 2011.05.11 |
★ php ★ [TIP/PHP] 나만의 규칙: include(), require(), include_once(), require_once() (0) | 2011.05.11 |