(function($){
	/* Метод, работающий с объектом основного меню и задающий работу подменю */
	$.fn.topMenuCreate = function(TIMEOUT){
		var TIMEOUT = typeof TIMEOUT == 'number' ? TIMEOUT : 500;
		/* Связываем переменную и основное меню */
		this.each(function(){
											 
			var topMenu = $(this);
			topMenu.topMenuTimer = 0;
			var menuItem = topMenu.find('li');
			/* Задаем параметры для тегов А при наведении и отведении от них*/
			menuItem.children('a').each(function(){
																														 
				$(this).hover(function(){
					var linkElement = $(this);
					var parent = linkElement.parent();
					/* Ищем уже активный объект */
					var actObject = topMenu.find('.actTopMenu').eq(0);
					if(typeof actObject.get(0) != 'undefined'){
						/* Скрываем его */
						actObject.children('.m-submenu').eq(0).css('display','none');
						actObject.removeClass('actTopMenu');
					};
					/* Сбрасываем таймер */
					if(topMenu.topMenuTimer) {
						clearTimeout(topMenu.topMenuTimer);
					};
					/* Показываем новый объект */
					parent.addClass('actTopMenu');
					parent.children('.m-submenu').eq(0).css('display','block');
				}, function(){
					topMenu.topMenuTimer = setTimeout(function(){
						/* Ищем уже активный объект */
						var actObject = topMenu.find('.actTopMenu').eq(0);
						/* Скрываем его */
						actObject.children('.m-submenu').eq(0).css('display','none');	
						actObject.removeClass('actTopMenu');
					},TIMEOUT);
				});
				
			});
			
			/* Задаем параметры для тегов DL при наведении и отведении от них*/
			menuItem.children('.m-submenu').each(function(){
				$(this).hover(function(){
					/* Сбрасываем таймер */
					if(topMenu.topMenuTimer) {
						clearTimeout(topMenu.topMenuTimer);
					};
				},function(){
					topMenu.topMenuTimer = setTimeout(function(){
						/* Ищем уже активный объект */
						var actObject = topMenu.find('.actTopMenu').eq(0);
						/* Скрываем его */
						actObject.children('.m-submenu').eq(0).css('display','none');	
						actObject.removeClass('actTopMenu');
					},TIMEOUT);
				});
			});
			
		});

		/* Возвращаем объект $ для основного меню */
		return this;
	};
	
	$(document).ready(function(){
		$('#menu').topMenuCreate(500);
	});
})(jQuery);
