function menumover(ref) {
  ref.className += ' active';

  var children = ref.getElementsByTagName("ul");
  for (var c=0; c<children.length; c++) {
    children[c].style.display = "block";
    var bounds = objectBounds(ref);
    children[c].style.top = bounds.top+"px";
    children[c].style.left = (bounds.left+bounds.width)+"px";
  }
}
function menumout(ref) {
  ref.className = ref.className.replace(/\ active/,"");

  var children = ref.getElementsByTagName("ul");
  for (var c=0; c<children.length; c++) {
    children[c].style.display = "none"; 
  }
}

function objectBounds(obj) {
	var o = new Object;
	o.top = 0;
	o.left = 0;
	o.width = obj.offsetWidth;
	o.height = obj.offsetHeight;

	if (obj.offsetParent) {
		while (obj.offsetParent) {
			o.top += obj.offsetTop;
			o.left += obj.offsetLeft;
			obj = obj.offsetParent;
		}
		o.top += obj.offsetTop;
		o.left += obj.offsetLeft;
	} else if (obj.x && obj.y) {
		o.left += obj.x;
		o.top += obj.y;
	}
	return o;
}

