+++ 홈제작 바이블 +++
홈제작 바이블 이 사이트는 이영찬님의 사이트를 복원한 것입니다.
Untitled Document
Html
Dhtml
Css
Php
Asp
Cgi
Java Script
Java Applet
Multimedia
Win Tip
[Scroller] 텍스트에어리어에 글자 올림
텍스트에어리어의 내용을 위로 올립니다.데모를 눌러 확인하세요.



Script Example
<html>
<head><title>데모</title>
<SCRIPT LANGUAGE = "JavaScript">
<!--
function AraVob() {
}
var ScreenLine = new AraVob();
ScreenLine[1]  = "안녕하슈";
ScreenLine[2]  = "홈제작바이블입네다";
ScreenLine[3]  = "역시 쓸말이 없군요";
ScreenLine[4] = "잘해봐요..";
ScreenLine[5] = "그럼 이만..바빠서";
ScreenLine[6] = "후다닥";
ScreenLine[7] = "후다닥2";
ScreenLine[8] = "호호하하히히";
ScreenLine[9]  = "왜...?";
ScreenLine[10]  = "난 쓸말이 없을까..";
ScreenLine[11]  = "지겹다...쓸말없다는말..";
ScreenLine[12] = "역시없음.";
ScreenLine[13] = "끝";

var msgNum = 1;        
var msgCnt = 13;         // 메세지수
var typeSpeed = 50;      // 올라가는속도
var lineDelay = 2000     // 마지막부분의 딜레이
var pagLen = 7;          // 한페이지당 라인수

var delay = typeSpeed;    
var timerPS = null;
var linPntr = 0;
var tally = 1;
var msg = " ";
var outMsg = "";
var i = 0;
var cr="\r\n"
if ("3" <=navigator.appVersion.charAt(0)) {
var cr="\n"
}
else {
  ScreenLine[11]="    You will need to upgrade your browser."
}
if (32<=navigator.userAgent.length && navigator.userAgent.substring(25,32)=="Opera/3") {
  ScreenLine[10]="Your version of Opera show's a moving scroll bar button when you"
  ScreenLine[12]="  but the frame may not appear to be scrolling."+cr
}
// set up ScreenLines for display
for (x = msgCnt; 1 <= x; x--) {
  ScreenLine[x+pagLen] = ScreenLine[x] + cr;
}
for (x = 1; x <= (pagLen); x++) {
  ScreenLine[x] =  " " +cr;
}
msgCnt +=  pagLen;
msg = ScreenLine[1];
// end setup

function DisplayScroll() {
if (msgNum < pagLen) {
  delay = typeSpeed;
}
else {
  delay = lineDelay;
}
ChangeMsg();
outMsg += msg;
self.document.forms[0].elements[0].value = outMsg;
  timerPS = setTimeout("DisplayScroll()",delay);
}

function ChangeMsg() {
msgNum++;
if (msgCnt < msgNum) {
   msgNum = 1;
}
if (pagLen <= tally) {
   chgPage();
}
tally++;
msg = ScreenLine[msgNum];
}

function chgPage() {
if (msgNum < pagLen) {
   linPntr = msgCnt - pagLen + msgNum + 1;
}
else {
   linPntr = msgNum - (pagLen - 1);
}

outMsg =   ScreenLine[linPntr];
for (p = 1; p < (pagLen - 1); p++) {
   linPntr++;
   if (msgCnt < linPntr) {
     linPntr = 1;
   }
   outMsg += ScreenLine[linPntr];
}
}
function quitDisplay() {
  self.document.forms[0].elements[0].value = "Scroll a Page for yourself today!";
}
// -->
</SCRIPT>
</head>
<BODY onLoad = "DisplayScroll()"; onUnload = "quitDisplay()">
<FORM NAME = "msgform" ACTION = " ">
<TEXTAREA NAME = "msgarea" COLS = 69 ROWS = 8>
JavaScript (or JScript) Power needed.
</TEXTAREA>
</FORM>
</body>
</html>


설명
메세지와 글올라가는 속도등을 조절해보세요. 참고로 textarea의 cols는 옆으로 써지는 수,rows는 아래로 써지는 라인수입니다. 적절한 메세지의 수를 선택하여 텍스트에어리어의 크기를 조절해서 한페이장 보여줄 메세지를 결정해서 적용시키세요

Update : 2001/06/01 [돌아가기]