var timer=10;
var timer1=10;
var massName = new Array('about', 'good', 'price', 'service');
var massNameCh = new Array('goodChild1', 'goodChild2', 'goodChild3', 'goodChild4', 'goodChild5');
var mass = new Array();

function showMenu(id) {
	var menu = document.getElementById(id);
	for (i=0; i<massName.length; i++) {
		if (i==0) hideM(); 
		if (massName[i]) document.getElementById(massName[i]).style.display = 'none';
	}
	menu.style.display = 'block';
	mass[0] = id;
	keepMenu(); // что бы при наведение на текущий пункт меню из выпавшего меню выпавшее меню не исчезало
}

function showMenuChild(id) {
	keepMenu(); // что бы при наведение на текущий пункт меню из выпавшего меню выпавшее меню не исчезало
	for (i=0; i<massNameCh.length; i++) {
		if (massNameCh[i]) document.getElementById(massNameCh[i]).style.display = 'none';
	}
	var menu = document.getElementById(id);
	menu.style.display = 'block';
	mass[mass.length] = id;
}

function hideMenuChild(id) {
	var menu = document.getElementById(id);
	timer1 = setTimeout("hideCh()", 10);
	iden=id;
}

function hideCh() {
	var menu = document.getElementById(iden);
	menu.style.display = 'none';
}

function hideMenu() {
	timer = setTimeout("hideM()", 150);
}

function keepMenu() {
    clearTimeout(timer);
}

function keepMenu1() {
    clearTimeout(timer);
	clearTimeout(timer1);
}

function hideM() {
	for (i=0; i<mass.length; i++) {
		var menu = document.getElementById(mass[i]);
		menu.style.display = 'none';
	}
	for (i=0; i<mass.length; i++ ) { mass[i]=""; }
	mass.length = 0;
}

function transformOver(mObj, spName) {
	mObj.style.backgroundColor='#ccc';
	mObj.style.color='#000';
	span = document.getElementById(spName);
	span.style.textDecoration='none';	
}

function transformOut(mObj, spName) {
	mObj.style.backgroundColor='#999';
	mObj.style.color='#fff';
	span = document.getElementById(spName);
	span.style.textDecoration='underline';
}

	// Временные единицы относительные, подбирать экспериментально.
var up=10 // Время выполнения эффекта, появление.
var dn=15 // Время выполнения эффекта, исчезновение.
var s=0 // Начальная прозрачность, от 0.
var r=100 // Конечная прозрачность, до 100.

var x=25/up
var y=-25/dn
var z=new Array()
var timer=new Array()
function eff(i,e){
	if	(timer[i.id]){clearInterval(timer[i.id])}
	if	(e.type!='mouseover'){z[i.id]=y;var t=dn}
	else{z[i.id]=x;var t=up}
		timer[i.id]=setInterval(function(){return time(i)},t)}
function time(i){
	if	(i.filters){
		i.filters.alpha.opacity+=z[i.id]
		c=i.filters.alpha.opacity}
	else{
		c=i.style.opacity*100
		c+=z[i.id]
		i.style.opacity=c/100}
	if	(c<=s){if(i.filters){i.filters.alpha.opacity=s}else{i.style.opacity=s/100};clearInterval(timer[i.id]);return}
	if	(c>=r){if(i.filters){i.filters.alpha.opacity=r}else{i.style.opacity=r/100};clearInterval(timer[i.id]);return}
		}
