본문 바로가기

javascript

로테이트 되는 깜찍한 레인보우 메세지

<!--1. 아래의 스크립트를 <HEAD></HEAD>사이에 복사해 넣으세요-->

<script>

var textfont="Verdana"   // 글꼴
var textsize=12              // 크기
var textcolor="FF0000"    // 기본색상

var msg=new Array()  // 나타낼 메세지를 입력합니다
msg[0]="안녕하세요? 반갑습니다"
msg[1]="1000 여개가 넘는 자바스크립트 소스가"
msg[2]="매일 매일 업데이트 됩니다"
msg[3]="HTTP://bizserver.new21.net"

var maxloop=50
var step=20
var timer
var msglength=msg[0].length-1
var i_mes=0
var loopcounter=0
var xpos=new Array()
var ypos=new Array()

for (i=0; i<=msg.length-1;i++) {
    msg[i]=msg[i]+" "
}

for (i=1; i<=msg.length-1;i++) {
    if(msg[i].length-1 >= msg[i-1].length-1) {msglength=msg[i].length-1}
}

for (i=0; i<=msglength-1;i++) {
    xpos[i]=-50
        ypos[i]=-50
}

if (document.layers) {  // 네츠케이프용 코드
        if (textsize>25) {textsize=6}
        else if (textsize>20) {textsize=5}
        else if (textsize>14) {textsize=4}
        else if (textsize>10) {textsize=3}
        else if (textsize>8) {textsize=2}
        else if (textsize<=7) {textsize=1}
}

function init() {
        if (loopcounter<=maxloop) {
                for (i=message.length-1; i>=1; i--) {
                           xpos[i]=xpos[i-1]+step
                        ypos[i]=ypos[i-1]
            }
                xpos[0]=220
                ypos[0]=50
                if (document.all) { // 아이이용 코드
                        for (i=0; i<message.length-1; i++) {
                            var thisspan = eval("document.all.span"+(i)+".style")
                            thisspan.posLeft=xpos[i]
                                thisspan.posTop=ypos[i]
                                        thisspan.color=Math.random()*255*255*255+Math.random()*255*255+Math.random()*255
                    }
                }
                if (document.layers) {
                        for (i=0; i<message.length-1; i++) {
                            var thisspan = eval("document.span"+i)
                            thisspan.left=xpos[i]
                                thisspan.top=ypos[i]
                    }
                }
                loopcounter++
                timer=setTimeout("init()",20)
        }
        else {
                clearTimeout(timer)
                clearmessage()
        }
}

function clearmessage() {
                loopcounter=0
                if (document.all) {
                        for (i=0;i<=msglength;i++) {            
                                var thisspan = eval("document.all.span"+i)
                            thisspan.innerHTML=" "
                                var thisspan = eval("document.all.span"+(i)+".style")
                thisspan.posLeft=-5000  
                        }
                }
                if (document.layers) {
                        for (i=0;i<=msglength;i++) {
                                var thisspan = eval("document.span"+i)
                thisspan.left=-5000
                            
                        }
                }
                changemessage()
}

function changemessage() {
                var messa=msg[i_mes]
                message=messa.split("")
                if (document.all) {
                        for (i=0;i<=message.length-1;i++) {
                                var thisspan = eval("document.all.span"+i)
                            thisspan.innerHTML="<p style='font-family:"+textfont+";font-size:"+textsize+";'>"+message[i]+"</p>"
                        }
                }
                if (document.layers) {
                        for (i=0; i<message.length-1; i++) {
                            var thisspan=eval("document.span"+i+".document")
                            thisspan.write("<p><font size="+textsize+" color="+textcolor+" face="+textfont+">"+message[i]+"</font></p>")
                                thisspan.clear()
                    }
                }
                i_mes++
                if (i_mes>=msg.length) {i_mes=0}
                timer=setTimeout("init()",50)
}

// - End of JavaScript - -->
</script>

<STYLE>
.spanstyle {
        position:absolute;
    left:-5000px;
}
</STYLE>
</HEAD>

<!--2. <BODY> 태그내에 onload="" 혹은 onunload 부분이 있으면 복사해 넣으세요-->

<BODY bgcolor="black" onLoad="clearmessage()">

<!--3. <BODY></BODY> 부분에 아래의 스크립트를 복사해 넣으세요-->

<script>
<!-- Beginning of JavaScript -

for (i=0;i<=msglength;i++) {
    document.write("<span id='span"+i+"' class='spanstyle'>")
    document.write("</span>")
}

// - End of JavaScript - -->
</script>