映画でよく見るエンディングの演出のようなダイナミックHTMLです。 テキストがフェードインしながら下からスクロールアップし、上の方でフェードアウトするスクリプトです。 Web演出用にもってこいです。
HEAD部分にスタイルとスクリプトを記述します。 BODY部分には、DIV要素に対してID属性iL1,iL2・・・(テキスト分)を指定します。
表示するテキスト、そのスタイル、速度、フェード位置などが変更可能です。
IE4,NN4以上
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=Shift_JIS"> <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> <META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript"> <TITLE>エンディング!?</TITLE> <STYLE TYPE="text/css"> <!-- .Style1{ position: absolute; font-size: 28pt; font-weight: bold; } --> </STYLE> <SCRIPT LANGUAGE="javascript" TYPE="text/javascript"> <!-- //ブラウザのバージョンチェック var brw_v = navigator.appVersion.charAt(0); var brw_n = navigator.appName.charAt(0); var iIE4 = false; var iNN4 = false; if((brw_v >= 4)&&(brw_n == "M"))iIE4 = true; if((brw_v >= 4)&&(brw_n == "N"))iNN4 = true; var Laymax = 5; //字幕(レイヤー)数 var FadeStart = 300; //フェードイン開始位置 var FadeEnd = 50; //フェードアウト開始位置 var ScrSpeed = 10; //スクロールスピード var PLeft = 100; //左位置 var PHeight = 50 ; //レイヤー間隔(垂直方向) var Comments = new Array(); Comments[1] = "<DIV CLASS='Style1'>初めてのホームページ講座<\/DIV>"; Comments[2] = "<DIV CLASS='Style1'>映画のエンディングのような<\/DIV>"; Comments[3] = "<DIV CLASS='Style1'>演出に凝ってみました・・・<\/DIV>"; Comments[4] = "<DIV CLASS='Style1'>・・・・・・・・・・・・・<\/DIV>"; Comments[5] = "<DIV CLASS='Style1'>Produced by T.Miyazaki 1999.2<\/DIV>"; var lay = new Array(); var Lflag = false; var TimeID; function Init(){ if(iIE4){ for(i = 1; i <= Laymax; i++){ lay[i] = document.all("iL"+i); lay[i].style.visibility = "hidden"; } } if(iNN4){ for(i = 1; i <= Laymax; i++){ lay[i] = document.layers["iL""+i]; lay[i].visibility = "hide"; } } Lflag = true; SetComPos(); Scroll(); } var ComPosY = new Array(); function SetComPos(){ for(i = 1; i <= Laymax; i++){ ComPosY[i] = FadeStart + (i - 1)*PHeight + 20; CountFadeIn[i] = 99; CountFadeOut[i] = 99; } } var CountScr = 0; var CountFadeIn = new Array(); var CountFadeOut = new Array(); var Com; function Scroll(){ if(Lflag){ CountScr++; if(CountScr > 60000){ clearTimeout(TimeID); } for(i = 1; i <= Laymax; i++){ ComPosY[i] -= 1; if(iIE4){ lay[i].style.top = ComPosY[i]; lay[i].style.left = PLeft; } if(iNN4){ lay[i].top = ComPosY[i]; lay[i].left = PLeft; } if(ComPosY[i] == FadeStart){ CountFadeIn[i] = 0; if(iIE4)lay[i].style.visibility="visible"; if(iNN4)lay[i].visibility="show"; } if(CountFadeIn[i] < 99)FadeIn(i); if(ComPosY[i] == FadeEnd){ CountFadeOut[i] = 0; } if(CountFadeOut[i] < 99)FadeOut(i); } } TimeID = setTimeout("Scroll()",ScrSpeed); } var ColorPLTin = "fedcba9876543210"; var ColorPLTout = "0123456789abcdef"; function FadeIn(Com){ if(CountFadeIn[Com] < ColorPLTin.length){ z = ColorPLTin.charAt(CountFadeIn[Com]); ColorF = z+z+z+z+z+z; SetColor(Com,ColorF); CountFadeIn[Com]++; }else{ CountFadeIn[Com] = 99; } } function FadeOut(Com){ if(CountFadeOut[Com] < ColorPLTout.length){ z = ColorPLTout.charAt(CountFadeOut[Com]); ColorF = z+z+z+z+z+z; SetColor(Com,ColorF); CountFadeOut[Com]++; }else{ CountFadeOut[Com] = 99; } } function SetColor(Com,ColorF){ if(iIE4){ lay[Com].style.color = ColorF; lay[Com].innerHTML = Comments[Com]; lay[Com].style.top = ComPosY[i]; lay[Com].style.left = PLeft; } if(iNN4) { lay[Com].document.open(); lay[Com].document.fgColor = ColorF; lay[Com].document.write(Comments[Com]); lay[Com].document.close(); } } // --> </SCRIPT> </HEAD> <BODY onload="Init()"> <DIV CLASS="Style1" ID="iL1"></DIV> <DIV CLASS="Style1" ID="iL2"></DIV> <DIV CLASS="Style1" ID="iL3"></DIV> <DIV CLASS="Style1" ID="iL4"></DIV> <DIV CLASS="Style1" ID="iL5"></DIV> </BODY> </HTML>