웹마스터 팁

제목이 마땅치 않아서리...쩝.
큰 원형 거울안에 사진이 보이는데 그 원형 거울이 화면 중앙을 중심으로 움직여요.
3차원으로....설명이 제대로 된건가?
암튼 맨 아래 샘플 주소 놓았으니 보시던지...

아래의 소스중에 한글로 되어있는 부분을 꼭 읽으세요.

★ 설명시작★

일단 헤더부분은 아래처럼 하세요.
사실 메타는 필요 없을 수도 있지만..

<head>
<meta NAME="keywords" CONTENT="DHTML, JavaScript, VML, 3d, slideshow, animation,gif, image, fade, fade, tile download, free, script, applet">
<meta NAME="description" CONTENT="This is a very spectacular slideshow. The script makes your images float and rotate through your webpage. Each image can be linked. Selectable form (circle or rectangle). Full effect with Internet Explorer 5x/6x or higher. Floating effect with Netscape Navigator 6x/7x.">
<xml:namespace ns="urn:schemas-microsoft-com:vml" prefix="v"/>
<style>
v:* { behavior: url(#default#VML); }
</style>
</head>

아래는 바디부분입니다.

<body>
<SCRIPT>

// 그림 주소는 여러분걸로 하세요. 그림갯수는 여러분 맘대로..

var slideurl=new Array()
slideurl[0]="http://그림주소/그림파일1.jpg"
slideurl[1]="http://그림주소/그림파일2.jpg"
slideurl[2]="http://그림주소/그림파일3.jpg"

// 각 이미지를 누르면 볼 수 있는 링크를 걸수도 있죠.
// 링크걸기 싫으면 걍 "#"로 표시하세요.
var slidelink=new Array()
slidelink[0]="http://julian.gana4u.co.kr"
slidelink[1]="#"
slidelink[2]="http://www.google.com"

// 링크를 걸었을때 새창으로 하려면 blank 알죠?
// "_blank" or "_top" or "_parent" or "_self" 등등.
var slidetarget=new Array()
slidetarget[0]="_blank"
slidetarget[1]="_self"
slidetarget[2]="_top"

// 3D-두께 (pixels)
var backdepth=6

// 테두리 색깔
var fillcolor="#666666"

// Netscape Navigator 사용자를 위한거, 그냥 두셈.
var standstill=3

// 이미지 형태
// 원형은 "oval" 사각형은 "rect"
var imageform="oval"

// 아래는 절대 건들지 마세요.
var slidewidth=1
var slideheight=1

var ns6=document.getElementById&&!document.all?1:0
var opera=navigator.userAgent.match(/Opera/)
var ie5=document.getElementById&&document.all&&!opera?1:0

standstill*=1000
var floatingspeed=1
var tempo=20
var numberofimages=slideurl.length-1
var stepx=new Array()
var stepy=new Array()
for (i=0;i<=numberofimages;i++) {
        stepx[i]=randommakerNS(floatingspeed)
        stepy[i]=randommakerNS(floatingspeed)
}
var imgwidth=new Array()
var imgheight=new Array()
for (i=0;i<=numberofimages;i++) {
        imgwidth[i]=10
        imgheight[i]=10
}
var x,y
var marginbottom
var marginleft=0
var margintop=0
var marginright
var timer
var i_fadestrength=new Array()
var i_fadestep=new Array()
var i_fadenow=new Array()
var i_fadenowmax=new Array()
for (i=0;i<=slideurl.length;i++) {
        i_fadenowmax[i]=2
        i_fadestrength[i]=randommakerNS(99)        
        i_fadestep[i]=1
        i_fadenow[i]=0
}

var spancontent=new Array()
var i_spancontent=0
var imgpreload=new Array()
for (i=0;i<=slideurl.length;i++) {
        imgpreload[i]=new Image()
        imgpreload[i].src=slideurl[i]
}
for (i=0;i<=numberofimages;i++) {
        spancontent[i]="<a href='"+slidelink[i]+"' target='"+slidetarget[i]+"'><img src='"+slideurl[i]+"' border='0'></a>"
}

var i_angle1=0
var i_size=1
var i_pic=0
var posleft=0
var postop=0
var x_extrusionangle=0
var y_extrusionangle=0
var x_rotationcenter=0
var y_rotationcenter=0
var pagewidth
var pageheight

function initNS() {
    marginbottom=window.innerHeight-11
    marginright=window.innerWidth-11          
        var thisspan=document.getElementById('span0')
        thisspan.innerHTML=spancontent[0]
        var thisspan=document.getElementById('span0')
        imgwidth[0]=parseInt(thisspan.offsetWidth)
        imgheight[0]=parseInt(thisspan.offsetHeight)
        var maxleftstart=marginright-imgwidth[0]
        var maxtopstart=marginbottom-imgheight[0]
        var thisspan=document.getElementById('span0').style
    thisspan.left=parseInt(thisspan.left)+randommakerNS(maxleftstart)
        thisspan.top=parseInt(thisspan.top)+randommakerNS(maxtopstart)
        thisspan.visibility="visible"
    checkmovementNS()
}

function randommakerNS(range) {                
        rand=Math.floor(range*Math.random())
        if (rand==0) {rand=Math.ceil(range/2)}
    return rand
}

function checkmovementNS() {
        checkpositionNS()
        movepicturesNS()
    timer=setTimeout("checkmovementNS()",tempo)
}

function movepicturesNS() {
    var thisspan=document.getElementById('span0').style
    thisspan.left=parseInt(thisspan.left)+stepx[0]
        thisspan.top=parseInt(thisspan.top)+stepy[0]        
        i_fadenow[0]++
        if (i_fadenow[0]>=i_fadenowmax[0]) {
                i_fadenow[0]=0
                if (i_fadestrength[0]>=100) {i_fadestep[0]=i_fadestep[0]*-1}
                else if (i_fadestrength[0]<=0) {
                        i_fadestep[0]=i_fadestep[0]*-1
                        i_spancontent++
                        if (i_spancontent>=spancontent.length) {i_spancontent=0}
                        document.getElementById('span0').innerHTML=spancontent[i_spancontent]
                }
        }        
        i_fadestrength[0]+=i_fadestep[0]
        document.getElementById('span0').style.MozOpacity=Math.round(i_fadestrength[0])/100
}

function checkpositionNS() {
        imgwidth[0]=parseInt(document.getElementById('span0').offsetWidth)
        imgheight[0]=parseInt(document.getElementById('span0').offsetHeight)        
        var thisspan=document.getElementById('span0').style
        var leftx=parseInt(thisspan.left)
        var topy=parseInt(thisspan.top)
        if (leftx>marginright-imgwidth[0]-floatingspeed) {
                thisspan.left=leftx-Math.abs(stepx[0]+1)
                stepx[0]=randommakerNS(floatingspeed)*-1        
        }
        if (leftx<marginleft) {
                thisspan.left=leftx+Math.abs(stepx[0])
                stepx[0]=randommakerNS(floatingspeed)                        
        }        
        if (topy>marginbottom-imgheight[0]-floatingspeed) {
                thisspan.top=topy-Math.abs(stepy[0])
                stepy[0]=randommakerNS(floatingspeed)*-1
        }
        if (topy<margintop) {
                thisspan.top=topy+Math.abs(stepy[0])
                stepy[0]=randommakerNS(floatingspeed)
        }
}

function initIE() {
        var i_preload=0
        for (i=0;i<=slideurl.length-1;i++) {
                var imgref=eval("document.n"+i)
                if (imgref.complete) {i_preload++}
        }
        if (i_preload>=slideurl.length-1) {
                slidewidth=document.getElementById('spn1').offsetWidth
                slideheight=document.getElementById('spn1').offsetHeight
                pagewidth=document.body.clientWidth
                pageheight=document.body.clientHeight
                document.getElementById('rectid').style.width=slidewidth
                document.getElementById('rectid').style.height=slideheight
                posleft=(pagewidth-slidewidth)/2
                postop=(pageheight-slideheight)/2
                x_rotationcenter=(posleft/slidewidth)/2
                y_rotationcenter=(postop/slideheight)/2
                var rotationcenter=0+","+y_rotationcenter+","+x_rotationcenter
                document.getElementById('rectid').style.left=posleft
                document.getElementById('rectid').style.top=postop
                document.getElementById('extrusionid').rotationcenter=rotationcenter
                rotateIE()
        }
        else {
                var timer=setTimeout("initIE()",200)
        }
}

function rotateIE() {
        i_angle1+=1
        if (i_angle1>=360) {
                i_angle1=0
        }
        if (i_angle1==127) {
                i_pic++
                if (i_pic>=slideurl.length) {i_pic=0}
                document.getElementById('fillid').src=slideurl[i_pic]
        }
        document.getElementById('rectid').style.rotation=i_angle1
        document.getElementById('extrusionid').rotationangle=i_angle1+","+i_angle1
        var timer=setTimeout("rotateIE()",30)
}

function openpageIE() {
        if (slidetarget[i_pic]=="_blank") {
                window.open(slidelink[i_pic])
        }
        else if (slidetarget[i_pic]=="_self") {
                document.location.href(slidelink[i_pic])
        }
        else if (slidetarget[i_pic]=="_top" || slidetarget[i_pic]=="_parent") {
                top.location.href(slidelink[i_pic])
        }
}

if (ns6) {
        document.write("<span id='span0' style='position:absolute;top:0px;left:0px;filter:alpha(opacity=0);-moz-opacity:0'></span>")
    document.close()
        window.onload=initNS
}
if (ie5) {
        document.write('<div id="preloadimages" style="position:absolute;left:0px;top:-5px;visibility:hidden">')
        for (i=0;i<=slideurl.length-1;i++) {
                document.write('<span id="spn'+i+'" style="position:absolute;width:2px;left:0px;top:0px;">')
                document.write('<img src="'+slideurl[i]+'" name="n'+i+'">')
                document.write('</span>')
        }
        document.write('</div>')
           document.write('<v:'+imageform+' id="rectid"  style="position:absolute;top:0;left:0;width:'+slidewidth+';height:'+slideheight+'" onClick="openpageIE()">')
           document.write('<v:extrusion id="extrusionid" on="true" type="perspective" color="'+fillcolor+'" rotationcenter="0,0,0" backdepth="'+backdepth+'" diffusity="2.5" metal="true">'+ ')
        document.write('</v:extrusion>')
document.write('<v:fill id="fillid" opacity="100%" color="'+fillcolor+'" type="frame" src="'+slideurl[0]+'"/>')
   document.write('</v:'+imageform+'>')
        window.onload=initIE
   }
</script>
</body>

★설명  끝★

2003년 11월 21일 줄리앙 씀.

샘플은 여기 가보세요.(주소 복사하실때 연결해서 놓으셔야 해요 부득이 두줄로 표시합니다만....)

http://free2.ttboard.com/lovemeet/ttboard/ttboard.cgi?
category=&search_method=&search_mode=&search_word=&act=view&code=40&bname=WEBSTUDY&page=1&SearchBlock=1"

제목 글쓴이 날짜
들어갈때 시작페이지 설정하는거... [2] 쉿!비밀 2003.12.17
소스보기를 일부 차단하는 방법입니다. [12] Juny. 2003.12.12
오른버튼 누를때 메뉴 뜨게하기(깔끔버전) [5] file 2003.12.09
소스연구1 테이블 자동으로 늘었다 커지기 태클환영 [9] 박한웅 2003.12.04
크리스마스 날짜 카운터 [1] keymove 2003.12.04
익스플로러에서 인쇄 누르면 페이지 이동.... [3] 조한웅 2003.11.28
3D 효과의 원형 거울을 띄우자. [6] 줄리앙 2003.11.21
팝업공지창 다시 안뜨게 하는 소스[날짜지정가능] [17] lemin 2003.11.20
자바로 만들어진 계산기 [1] 현규웅 2003.11.20
동영상 오른쪽 버튼 방지 소스 입니다... [9] 김성목 2003.11.15
플래시느낌의 유동적인 메뉴 [9] jabusim 2003.11.13
심플한 원단위를 콤마로 나타내주기 [2] zentoo.com 2003.11.11
날짜카운터 숫자로만 입력하자. [3] TechnoKevin™ 2003.11.08
정말 멋있는 글자 변환 스크립트 [12] sythesis 2003.11.07
자바스크립트로 작성한 그림맞추기 퍼즐게임 [2] 김별 2003.11.05
자바스크립트로 윈도우 흉내내기 (?) [15] 뒹굴리스트 2003.11.03
마우스 이벤트 발생시 문서 상,하단으로 이동 [3] RedEye(kaist) 2003.10.30
클릭하면 홈페이지를 시작페이지로 하는 소스... [7] 젤군 2003.10.28
식대 계산기... ^^ [3] 김주형 2003.10.27
더 이상의 필터링은 없다!!! [10] 미친개 2003.10.26