var tip = document.getElementById("tip");
var tipShowing = false;
document.onmousemove = function(event) {
	if(tipShowing) {
		if(!event) event = window.event;
		var x = event.clientX - 50, y = event.clientY + 15;
		var witdh = Math.min(document.documentElement.clientWidth, document.body.offsetWidth);
		if(witdh == 0)
			witdh = Math.max(document.documentElement.clientWidth, document.body.offsetWidth);
		var height = Math.min(document.documentElement.clientHeight, document.body.offsetHeight);
		if(height == 0)
			height = Math.max(document.documentElement.clientHeight, document.body.offsetHeight);
		if(x + tip.offsetWidth > witdh) x = witdh - tip.offsetWidth; if(x < 0) x = 0;
		if(y + tip.offsetHeight > height) y -= tip.offsetHeight + 25;
		if(y >= 0) {
			var scrollLeft = Math.min(document.documentElement.scrollLeft, document.body.scrollLeft);
			if(scrollLeft == 0)
				scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
			var scrollTop = Math.min(document.documentElement.scrollTop, document.body.scrollTop);
			if(scrollTop == 0)
				scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
			tip.style.left = x + scrollLeft + "px"; tip.style.top = y + scrollTop + "px";
			tip.style.visibility = "visible";
		} else
			tip.style.visibility = "hidden";
	}
};
function showTip(text, event) {
	tip.innerHTML = text;
	tipShowing = true;
	document.onmousemove(event);
}
function hideTip() {
	tipShowing = false;
	tip.style.visibility = "hidden";
}