$(document).ready(function() {
	var heightMap = Array();
	var index = 0;
	
	$('.textContainer').each(function() {
		$(this).attr("id", index);
		heightMap[index] = $(this).height();
		$(this).css('height', 0);
		index++;
	});
	
	$('.navButton > a').hover(
		function() {
			var container = $(this).parent().find('.textContainer'); 
			container.addClass('containerOpen');
			container.css('display', 'block');
			container.stop().animate({ 
				height: heightMap[container.attr('id')]
			}, 'slow');
			$(this).addClass('open');
		},
		function(evt) {
			var parent = $(this).parent();
			var container = parent.find('.textContainer');
			var relatedTarget = evt.relatedTarget;
			if($(relatedTarget).parents('.navButton')[0] == parent[0]) {
				return;
			}
			$(container).stop().animate({ height: 0	}, function() {
				$(this).css('display', 'none');
			});
			$(this).removeClass('open');
			container.removeClass('containerOpen');
		}
	);
	$('.textContainer').mouseout(function(evt) {
		var parent = $(this).parent();
		var relatedTarget = evt.relatedTarget;
		if($(relatedTarget).parents('.navButton')[0] == parent[0])
			return;
		$(this).stop().animate({ height: 0 }, function() {
			$(this).css('display', 'none');
		});
		$(this).removeClass('containerOpen');
		$(this).parent().find('a').removeClass('open');
	});
});
