var timeout	= 0;
var closetimer	= 0;
var ddmenuitem	= 0;

// open hidden layer
function mopen(id) {
	// cancel close timer
	mcancelclosetime();
	// close old layer
	if (ddmenuitem) ddmenuitem.style.visibility = 'hidden';
    // get new layer and show it
    ddmenuitem = document.getElementById(id);
    ddmenuitem.style.visibility = 'visible';
	}
// close showed layer
function mclose() {
	closetimer = window.setTimeout(mclose, timeout);
	if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
	}
// go close timer
function mclosetime() {
	closetimer = window.setTimeout(mclose, timeout);
	}
// cancel close timer
function mcancelclosetime() {
	if(closetimer) {
		window.clearTimeout(closetimer);
		closetimer = null;
		}
	}
// close layer when click-out
document.onclick = mclose;