//--HTML出力 
function outputLAYER( layName, html )
{
	if( document.getElementById )													// e5,e6,n6,n7,m1,o7,s1用
	{
		document.getElementById( layName ).innerHTML=html;
	}
	else if( document.all )																// e4用
	{
			document.all( layName ).innerHTML=html;
	}
	else if( document.layers )														// n4用
	{
		with( document.layers[layName].document )
		{
			open();
			write( html );
			close();
		}
	}
}

//--追跡オブジェクト
//e4,e5,e6,n4,n6,n7,m1,o6,o7,s1用
function followingLAYER( layName, ofx, ofy, delay, html )
{
this.layName = layName;   //マウスを追跡させるレイヤー名
this.ofx     = ofx;       //マウスから右方向へ何ピクセル離すか
this.ofy     = ofy;       //マウスから下方向へ何ピクセル離すか
this.delay   = delay;     //マウスを追跡するタイミング

	if( document.layers )		this.div = '<layer name="'+layName+'" left="-100" top="-100">\n' + html +'</layer>\n';
	else										this.div = '<div id="'+layName+'"\n' + 'style="position:absolute;left:-100px;top:-100px">\n' + html +'</div>\n';

	document.write( this.div );
}

//--メソッドmoveLAYER()を追加する
followingLAYER.prototype.moveLAYER = moveLAYER;					//メソッドを追加する
function moveLAYER( layName, x, y )
{
	if( document.getElementById )													// e5,e6,n6,n7,m1,o6,o7,s1用
	{
		document.getElementById( layName ).style.left = x;
		document.getElementById( layName ).style.top  = y;
	}
	else if( document.all )																// e4用
	{
		document.all( layName ).style.pixelLeft = x;
		document.all( layName ).style.pixelTop  = y;
	}
	else if( document.layers )														// n4用
	{
		document.layers[layName].moveTo( x, y );
	}
}

//--Event をセットする
document.onmousemove = dofollow

//--n4マウスムーブイベント走査開始
if( document.layers )	document.captureEvents( Event.MOUSEMOVE );

//--Operaの全画面Event拾えない対策
if( window.opera )
{
	op_dmydoc ='<div id="dmy" style="position:absolute; z-index:0; left:100%;top:100%"></div> ';
	document.write( op_dmydoc );
}

//--イベント発生時にマウス追跡実行
function dofollow(e)
{
	for( var i=0; i<lyr.length ; i++ )
	{
		setTimeout( "lyr["+i+"].moveLAYER(lyr["+i+"].layName,"+(getMouseX(e)+lyr[i].ofx)+","+(getMouseY(e)+lyr[i].ofy)+")", lyr[i].delay );
	}
}

//--マウスX座標get 
function getMouseX(e)
{
	if(navigator.userAgent.search( "Opera(\ |\/)6" ) != -1 )	return e.clientX;																//o6用
	else if( document.all )																		return document.body.scrollLeft+event.clientX;	//e4,e5,e6用
	else if( document.layers || document.getElementById )			return e.pageX;																	//n4,n6,n7,m1,o7,s1用
}

//--マウスY座標get 
function getMouseY(e)
{
	if(navigator.userAgent.search( "Opera(\ |\/)6" ) != -1 )	return e.clientY;															//o6用
	else if( document.all )																		return document.body.scrollTop+event.clientY;	//e4,e5,e6用
	else if( document.layers || document.getElementById )			return e.pageY;																//n4,n6,n7,m1,o7,s1用
}

function zindexLAYER( layName, zindex )
{
	if( document.getElementById )	document.getElementById(layName).style.zIndex=zindex;		// e5,e6,n6,n7,m1,o6,o7,s1用
	else if( document.all )				document.all(layName).style.zIndex=zindex;							// e4用
	else if( document.layers )		document.layers[layName].zIndex=zindex;									// n4用
}

//テンプレートを作成しoutputLAYERへ渡す
function showHELP(data1)
{

// テーブル
var msg0  = '<table bgcolor="#dddddd" border="1">\n';
    msg0 += '<tr><td bgcolor="#eeeeff"><b>'+data1+'</b></td></tr>\n';
    msg0 += '</table>\n';

	outputLAYER( 'test0', msg0 );

	zindexLAYER('test0',10);
}

//レイヤーの中身を消す
function hideHELP()
{
	msg0 =''
	outputLAYER('test0',msg0)
}

//レイヤーセット
var lyr = new Array()
    lyr[0] = new followingLAYER('test0',10,20,1,'') // テーブル用

