msg = msg.substring(1,msg.length) + msg.substring(0,1)では、
msgに入ってる文字列の2文字目から最後までと先頭の1字をつなぎ、
それを、再度msgに代入している。つまり文字の入れ替えを行っている。
たとえば文字列がHELLOだとすると、各文字のインデックス番号は
H[0]E[1] L[2] L[3] O[4]
となる。そして、一回目の実行時には、
msg.substring(1,5)でELLO[1〜4]
(抜き出されるのは指定されている[5]の直前までであることに注意)
msg.substring(0,1)でH[0]が抜き出され、msgにELLOHが代入される。
そして、これがdelayで指定された間隔で繰り返される。
ヘッダ部分
<SCRIPT LANGUAGE="JavaScript">
var msg = "Welcome to my homepage. Enjoy!"
var delay = 500
var timerID
function msgScroll() {
document.forms[0].msgDisp.value = msg
msg = msg.substring(1,msg.length) + msg.substring(0,1)
timerID = setTimeout("msgScroll()",delay)
}
</SCRIPT>
ボディ部分
<FORM>
<INPUT TYPE="text" NAME="msgDisp" SIZE=30>
</FORM>