// headline.js (縦スクロール) //// DOM対応ブラウザ判別if (document.getElementById) {	// 外部スタイルシート読み込み	// document.write("<link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"datalib/headlines.css\">");	// ウインドウの読み込み完了時に関数initHeadlines()を実行	window.onload = initHeadlines;}// 初期設定function initHeadlines() {	// "headlines"が見つからない場合は初期設定を行わず戻る	if (!document.getElementById("headlines")) return;	// 変数の初期化	act = 0;		// 表示中のリスト項目No.	amount = 3;		// スクロール量 (px)	wait = 5;		// 一時停止時間 (秒)	pause = 1;		// 一時停止状態フラグ (1:停止、0:再開)	resetTime = (new Date()).getTime();	//一時停止用タイマーリセット		// li要素を配列listItemsに格納	listItems = document.getElementById("headlines").getElementsByTagName("li");	listLength = listItems.length;	// 表示位置の初期化	for (i=0; i<listLength; i++) {		listItems[i].style.top = (i* listItems[i].offsetHeight) + "px";		listItems[i].style.visibility = "visible";	}	// 関数updateHeadlines()を繰り返し処理する	if (listLength>1) setInterval("updateHeadlines()",100);}// 繰り返し処理function updateHeadlines() {	// 一時停止状態でない場合	if (!pause) {		// 各li要素（listItems）を順に処理		for (i=0; i<listLength; i++) {			n = (act+i)%listLength;				with (listItems[n]) {				prev = (n>0)? n-1:listLength-1;				// 上端に消えた場合				if ( parseInt(style.top) == -offsetHeight) {					// 一番下の行に移動し一時停止する					style.top = parseInt(listItems[prev].style.top)+listItems[prev].offsetHeight+"px";					act = (act+1)%listLength;					resetTime = (new Date()).getTime();					pause = 1;					break;					}				// 通常スクロールの場合				else {					// 上に移動する					if (n==act) style.top = Math.max(-offsetHeight,parseInt(style.top)-amount)+"px";					else style.top = parseInt(listItems[prev].style.top)+listItems[prev].offsetHeight+"px";						}			}		}	}	// 一時停止状態の場合	else {		// 一時停止後の経過時間を調べる		releaseTime = (new Date()).getTime();		// 3秒後に一時停止解除する		if (releaseTime - resetTime > 1000 * wait ) pause = 0;	}}
