日本語2バイトコードを判別しメッセージを流します。流れるメッセージは、自動的に生成されます。
<SCRIPT Language="JavaScript"><!-- stcnt = 0; str = "ようこそ「"+document.title+"」のページへ!"; blnk = " "; b3 = blnk+blnk+blnk; sc = b3.length; function Klength(moji) { klen = 0; for (ki=0; ki<moji.length; ki++) { c = escape(moji.charAt(ki)); cb = eval("0x"+c.charAt(1)); if ((cb==8) || (cb==9) || (cb==14) || (cb==15)) ki++; klen++; } return klen; } // 指定した文字列を取得します(Shift JIS) function Ksubstring(moji,st,ed) { len = 0; rstr = ""; for(ai=0; ai<moji.length; ai++) { kstr=moji.charAt(ai); c = escape(kstr); cb = eval("0x"+c.charAt(1)); if ((cb==8) || (cb==9) || (cb==14) || (cb==15)) { kstr=kstr+moji.charAt(ai+1); ai++; } if ((st<=len) && (ed>=len)) rstr += kstr; len++; } return rstr; } // グローバル変数にして速度を稼ぐ ml = Klength(str); // 配列に表示する文字を記憶させてしまう px = new makeArray(ml+2); px[0]=""; for (ic=1; ic<ml+1; ic++) { px[ic-1]=Ksubstring(str,ic,ml); window.status = "メッセージを作成中です....["+ic+"/"+ml+"]"; } function makeArray(array_n) { this.length = array_n; for (ai = 0; ai < array_n; ai++) this[ai] = ""; } // スクローラー function scroller() { if (stcnt > sc) { window.status = px[stcnt-sc]; }else{ window.status=b3.substring(stcnt,sc)+str; } stcnt>(sc+ml) ? stcnt=0 : stcnt++; timeID = window.setTimeout("scroller()",200); } // --></SCRIPT>