
$(document).ready(function()
{   
	// Put these values in memory once on page load
	var pageWidth = $("#wrapper").width();
	var isIE6 = $.browser.msie && /6.0/.test(navigator.userAgent);
	
	// Bind mouseenter event
	$("#globalNav ul:first > li").bind("mouseenter",function(){
    	
    	$("a:first",this).addClass("selected");
    	
    	var element = $("div",this);
    	
    	if(element.length > 0)
    	{
	    	// Reset left position
	    	var leftPostion = "auto";
	    	element.css("left", leftPostion);
	    
			var documentWidth = $(document).width();
			
			element.fadeIn("fast");
			
			// These values must be calculated after fadeIn
			var position = element.offset();
			var menuWidth = element.outerWidth();
			
			var rightSideLimit = ((documentWidth - pageWidth) / 2) + pageWidth;
			var menuFarRightPosition = position.left + menuWidth;
			
			// If menu is out-of-bounds, correct it
			if(menuFarRightPosition > rightSideLimit)
			{
				leftPostion = position.left - (menuFarRightPosition - rightSideLimit);
				element.css("left", leftPostion);
			}
			
			// IE6 iFrame z-index hack
			if(isIE6)
			{
				$("<iframe id=\"scriptedIFrame\" src=\"javascript:'&lt;html&gt;&lt;/html&gt;';\" scrolling=\"no\" frameborder=\"0\" style=\"position:absolute;left:" + leftPostion + ";width:" + menuWidth + ";height:" + element.outerHeight() + ";border:none;display:block;z-index:0\"></iframe>").insertBefore(element);
			}
		}
		
	// Bind mouseleave event
	}).bind("mouseleave",function(){
		
		$("a:first",this).removeClass("selected");
		
		// IE6 iFrame z-index hack
		if(isIE6)
		{
			$("#scriptedIFrame").remove();
			$("div",this).hide();
		}
		else
			$("div",this).fadeOut("fast");
	});


});

