// JavaScript Document
/*
 * Script : menu horizontal déroulant (animé)
 * Ver.   : 1.0a
 * Date   : 19/05/2009 [fr]
 * Depend : Jquery.js
 * Author : Churchill
 *
 */
 

jQuery.fn.extend({
	menu: function(){
		if(this.is('ul')){
			selector = this;
		}else{
			selector= this.find('ul:first')
		}
		//Hide all submenu items (if not done via another method
		selector.find('ul').hide();
		
		// Mouseover on first level item menu shows submenu, mouseout hide it
		selector.find('li:has(ul)').hover( 
			function(){
				$j(this).find('ul:not(:animated)').slideDown('fast');
				$j(this).siblings('li').find('ul:visible').slideUp('fast'); // Hide opened submenus if quickly jumping between first level item
			},
			function(){$j(this).find('ul:not(:animated)').slideUp('fast');}
		)
		
		// Accessibility : same event events as mouse but with keyboard
		selector.find('li:has(ul) a').focus(
			function(){$j(this).parents('li:first').find('ul').show();}
		)
		
		selector.find('li:has(ul) ul li:last-child a').blur(
			function(){$j(this).parents('ul:first').hide();}
		)
	}
});
