﻿// マウスポインタを文字が追いかける

var text_text = "Welcome  to  WHITE-ARROW"; // 文字
var text_speed = 80;  // スピード（大きくすると遅くなる）
var text_xpad = 13;   // 文字間の距離
var text_color = "orange"; // 文字の色
var text_size = 15;       // 文字のサイズ
var text_weight = "bold";  // 文字を太くするかどうか
var text_font = "Verdana"; // フォントの種類

////////////////////////////////////////////////////////////////////

var text_xmouse = -50, text_ymouse = -50;
var text_objs = new Array();

text_hidelist();
text_init();

function text_init() {
	if(!document.getElementById) return;
	var ua = navigator.userAgent;
	if(navigator.userAgent.indexOf("Windows") < 0) return;
	
	var letters = text_text.split("");
	var i;
	for(i = 0; i < letters.length; i++) {
		var span = document.createElement("SPAN");
		span.style.position = "absolute";
		span.style.left = "-50px";
		span.style.top = "-50px";
		span.style.color = text_color;
		span.style.fontSize = text_size + "px";
		span.style.fontWeight = text_weight;
		span.style.fontFamily = text_font;
		span.appendChild(document.createTextNode(letters[i]));
		document.body.insertBefore(span, document.body.firstChild);
		
		text_objs[i] = new Object();
		text_objs[i].obj = span;
		text_objs[i].x = -50;
		text_objs[i].y = -50;
	}
	
	if(!document.onmousemove_funclist) {
		document.onmousemove_funclist = new Array();
		document.onmousemove = function (e) {
			var fl = this.onmousemove_funclist;
			var i;
			for(i = 0; i < fl.length; i++) {
				fl[i](e);
			}
		};
	}
	document.onmousemove_funclist.push(text_onmousemove);
	
	setTimeout("text_timer();", text_speed);
}

function text_onmousemove (e) {
	if(window.event) e = window.event;
	text_xmouse = e.clientX + text_scrollLeft();
	text_ymouse = e.clientY + text_scrollTop();
}

function text_timer() {
	var i;
	for(i = text_objs.length - 1; i >= 1; i--) {
		text_objs[i].x = text_objs[i - 1].x + text_xpad;
		text_objs[i].y = text_objs[i - 1].y;
	}
	
	text_objs[0].x = text_xmouse + text_xpad;
	text_objs[0].y = text_ymouse;
	
	for(i = 0; i < text_objs.length; i++) {
		text_objs[i].obj.style.left = text_objs[i].x + "px";
		text_objs[i].obj.style.top  = text_objs[i].y + "px";
	}
	
	setTimeout("text_timer();", text_speed);
}

function text_scrollLeft () {
	if(window.pageXOffset)
		return window.pageXOffset;
	if(document.compatMode == "CSS1Compat")
		return document.body.parentNode.scrollLeft;
	if(document.body.scrollLeft)
		return document.body.scrollLeft;
	return 0;
}

function text_scrollTop () {
	if(window.pageYOffset)
		return window.pageYOffset;
	if(document.compatMode == "CSS1Compat")
		return document.body.parentNode.scrollTop;
	if(document.body.scrollTop)
		return document.body.scrollTop;
	return 0;
}

////////////////////////////////////////////////////////////////////

function text_hidelist() {
	if(!document.getElementById) return;
	if(window.imp_hidelist) return;
	window.imp_hidelist = 1;
	document.write("<div id='imp_divhidelist'></div>");
	setTimeout("text_hidelist_timer()", 500);
}

function text_hidelist_timer() {
	var div = document.getElementById("imp_divhidelist");
	if(!div) {
		setTimeout("text_hidelist_timer()", 500); return;
	}
	var pa = div.parentNode;
	while(pa) {
		if(pa.tagName == "DIV" && pa.className == "list module") break;
		if(pa.tagName == "DIV" && pa.className == "side") break;
		pa = pa.parentNode;
	}
	if(!pa) return;
	
	if(pa.className == "list module")
		pa.style.display = "none";
	else if(pa.className == "side") {
		pa.style.display = "none";
		var prev = pa.previousSibling;
		while(prev) {
			if(prev.nodeType == "1" && prev.tagName == "DIV") {
				prev.style.display = "none";
				break;
			}
			prev = prev.previousSibling;
		}
	}
}

