window.onload = function(){
	var m1 = new xMenu1('trigger1', 'menu1', 35, 'mouseover');
	var m2 = new xMenu1('trigger2', 'menu2', 35, 'mouseover');
	var m3 = new xMenu1('trigger3', 'menu3', 35, 'mouseover');
	var m4 = new xMenu1('trigger4', 'menu4', 35, 'mouseover');
	var m5 = new xMenu1('trigger5', 'menu5', 35, 'mouseover');
}
var curOpenMenu = null
xMenu1.instances = new Array();

function xMenu1(triggerId, menuId, mouseMargin, openEvent){
	xMenu1.instances[xMenu1.instances.length] = this;
	var isOpen = false;
	var trg = xGetElementById(triggerId);
	var mnu = xGetElementById(menuId);
	if (trg && mnu){
		xAddEventListener(trg, openEvent, onOpen, false);
	}
	function onOpen(){
		if (!isOpen) {
			for (var i = 0; i < xMenu1.instances.length; ++i) {
				xMenu1.instances[i].close();
			}
			trg.style.backgroundColor='#DDCD4C';
			if (navigator.userAgent.indexOf('Firefox')>0) xmod = 53;
			else xmod = 51;
			xMoveTo(mnu, xPageX(trg), xPageY(trg) + xHeight(trg));
			mnu.style.visibility = 'visible';
			xAddEventListener(document, 'mousemove', onMousemove, false);
			isOpen = true;
		}
	}
	function onMousemove(ev){
		var e = new xEvent(ev);
		if (!xHasPoint(mnu, e.pageX, e.pageY+10, -mouseMargin) && !xHasPoint(trg, e.pageX, e.pageY, -mouseMargin)) {
			closeMenu();
		}
	}
	function closeMenu(){
		if (isOpen) {
			trg.style.backgroundColor='#00371E';
			mnu.style.visibility = 'hidden';
			xRemoveEventListener(document, 'mousemove', onMousemove, false);
			isOpen = false;
		}
	}
	this.close = function(){
		closeMenu();
	}
} // end xMenu1
