function hideSub(id) {
	var sub = document.getElementById(id);
	if (sub != null && !sub.inSub) {
		sub.style.visibility = "hidden";
	}
}

function getUniqueId() {
	var dateObject = new Date();
	var uniqueId = dateObject.getTime();
  return uniqueId;
}

function initMenu() {
	var ulnodes;
	var menu = document.getElementById("menu");
	var linodes = menu.getElementsByTagName("li");
	var bgnodes = document.getElementById("background");
	for (var i=0;i<linodes.length;i++) {
		ulnodes = linodes[i].getElementsByTagName("ul");
		if (ulnodes.length > 0) {
			linodes[i].ulnode = ulnodes[0];
			linodes[i].ulnode.id = getUniqueId();
			linodes[i].ulnode.inSub = false;
			linodes[i].ulnode.innerHTML = bgnodes.innerHTML + ulnodes[0].innerHTML;
			linodes[i].onmouseover = function() { if (this.ulnode.style.visibility != "visibile") this.ulnode.style.visibility = "visible"; };
			linodes[i].onmouseout = function() { setTimeout("hideSub(" + this.ulnode.id + ")", 100); };
			//linodes[i].onmouseout = function() { if (!this.ulnode.inSub) { this.ulnode.style.visibility = "hidden"; } };
			linodes[i].ulnode.onmouseout = function() { if (this.inSub) { this.inSub = false; this.style.visibility = "hidden"; } };
			linodes[i].ulnode.onmouseover = function() { this.inSub = true; };
		}
	}
}

if (window.addEventListener)
	window.addEventListener("load", initMenu, false)
else if (window.attachEvent)
	window.attachEvent("onload", initMenu)

