jQuery.extend( jQuery.easing,
{
	def: 'easeOutExpo',
	easeOutExpo: function (x, t, b, c, d) {
		return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
	},
	swing: function (x, t, b, c, d) {		
		return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
	}
});

/*
hmnav
二级菜单left初始值：228px
二级菜单left最终值：208px
*/
$(function(){
	var nav = $('#navlisthook');
	var lvnav = nav.find('>li.nav1');
	var othernav = nav.find('>li.nav2');
	var ie = $.browser.msie;
	//数据填充
	var navdata = $('#navHiddenDate > div');
	
	
	lvnav.each(function(){
		var m1 = $(this);
		var m1title = m1.find('h2.lv1');
		var m1Index = lvnav.index(m1);		
		var m2 = $('.lv2list',m1);
		if(m2.length == 0){return;}
		var m2ypos = parseInt(m2.css('top'));
		if(!ie){m2.css({'opacity':0,left:'228px'});}
		var m2lis = m2.find('>li.lv2');
		m2lis.each(function(){
			var m2li = $(this);
			var m2li_link = m2li.find('a.lv2link');
			var m3pic = m2li_link.attr('viewphoto');
			//如果不存在下级，则只定义该菜单hover事件，然后退出
			if(!m3pic){
				m2li.hover(function(){					
					m2li_link.addClass('hover');						
				},function(){
					m2li_link.removeClass('hover');
				});
				return;
			}
			var m3con = $(m2li_link.attr('viewdata'));
			var m3link = m2li_link.attr('href');
			//插入m3box背景层
			m2li.append('<div class="subnavbox"><div class="subnavboxbg"></div><div class="subnavboxcontent"></div></div>');
			var m3conbox = m2li.find('div.subnavbox');
			if(!ie){m3conbox.css({'opacity':0,left:'206px'});}
			var m3conboxcon = m3conbox.find('div.subnavboxcontent');
			var m3conTop = -(m2ypos + (m1Index * 41)) - 110;//计算三级菜单垂直偏移量(由于.lv2未设定位，所以其下所有3级菜单垂直偏移量统一)
			m3conbox.css('top',m3conTop + 'px');			
			
			m3conboxcon.append('<a class="subboxpic" href="' + m3link + '" target="_blank"></a>');
			var m3picLink = m3conboxcon.find('a.subboxpic');
			m3con.children().appendTo(m3conboxcon);//插入三级菜单内容			
			//二级菜单事件
			m2li.hover(function(){
				var thepic = m3picLink.find('img');				
				if(thepic.length == 0){
					m3picLink.append('<img src="'+m3pic+'" />');
				}
				m2li_link.addClass('hover');
				if(!ie){
					m3conbox.show();
					m3conbox.stop().animate({left: '186px',opacity:1},200);
				}else{
					m3conbox.show();
				}			
			},function(){
				m2li_link.removeClass('hover');				
				if(!ie){					
					m3conbox.stop().css({left: '206px',opacity:0,display:'none'});
				}else{
					m3conbox.hide();
				}	
			});
		});
		
		//一级菜单事件
		m1.hover(function(){
			m1title.addClass('hover');
			if(!ie){
				m2.show();
				m2.stop().animate({left: '208px',opacity:1},200);
			}else{
				m2.show();
			}				
		},function(){
			m1title.removeClass('hover');			
			if(!ie){
				m2.stop().animate({left: '228px',opacity:0},200,function(){m2.hide();});
			}else{
				m2.hide();
			}
		});
	});
	
	
	//其他菜单(.nav2)
	othernav.each(function(){
		var me = $(this);
		var data = $(me.attr('viewdata'));
		me.append('<div class="subnavbox"><div class="subnavboxbg"></div><div class="subnavboxcontent"></div></div>');
		var sub = me.find('.subnavbox');
		data.children().appendTo(me.find('.subnavboxcontent'));
		me.hover(function(){
			sub.show();
		},function(){
			sub.hide();
		});
	});
});
