var t;

function is_child_of(parent, child) 
{
	if( child != null ) 
	{			
		while( child.parentNode ) 
		{
			if( (child = child.parentNode) == parent ) 
			{
				return true;
			}
		}
	}
	return false;
}
		
function fixOnMouseOut(element, event) 
{
	var current_mouse_target = null;
	var hide = "document.getElementById('smenu').style.display='none'";
	if( event.toElement ) 
	{				
		current_mouse_target = event.toElement;
	} else if( event.relatedTarget ) 
	{				
		current_mouse_target = event.relatedTarget;
	}
	
	if( !is_child_of(element, current_mouse_target) && element != current_mouse_target ) 
	{
		eval('t=setTimeout(hide, 3000)');
	}
}

function clearT()
{
	clearTimeout(t);
}