var menuId='left_menu'; //сдесь должен быть id менюшки
 $(document).ready(function() {
 	$("head").prepend('<style type="text/css">.hidd{display:none}</style>'); // объявим невидимый класс hidd
    jmenu(menuId);  //поехали ;)
   if(!$.browser.msie) $("#"+menuId).show(); //мазиле очень надо эта безполезная хрень
  });
 function jmenu(id){
 	$("#"+id+" li").each( function (index){ //обходим все li
 	$(this).attr("id",index); //назначаем li айдишники
 	if($(this).find("ul").size()){ // если у элимента есть дочерние ul значит если смысл их скрыть и ссылки в ней застоприть
 		$(this).find("> a").click(function(){openJmenu(index); return false;}); //ссылку стопорим и пересылаем на openJmenu
  		if(!$(this).hasClass("activeMI")){  //если li активная то не закрываем ее ul
  			$(this).find("> ul").addClass("hidd");
  	  }
    }
  });
 }// end function jmenu

 function openJmenu(id){// это штука не смотря на название не только открывает но и закрывает ;)
   	if($("#"+id).find("> ul").hasClass("hidd")){ //если невидимый класс то покажем и убьем этот класс
        $("#"+id).addClass("activeMI"); //покажем что это активный элемент
        $("#"+id+" > ul").animate({height: "hide"}, 'slow').animate({height: "show",opacity: "show"}, 'slow').removeClass('hidd'); //красиво и с переподвыподвертом покажем
 	}else{
 		 $("#"+id+" > ul").animate({height: "hide", opacity: "hide"}, "1000",'',
         function(){
        	$("#"+id).removeClass('activeMI');
         }).addClass("hidd"); //скроим эту пакость и присвоим невидимый класс
 	}
 }// end function openJmenu
