/* gnb */ (function($){ $.fn.gnb = function(opt){ var settings = $.extend({ dep1Wrap : '.gnb', dep2Wrap : '.gnb_sub', dep1 : null, dep2 : null },opt); return $(this).each(function(){ var $gnbDep1 = $(this).find(settings.dep1Wrap); var $gnbDep2 = $(this).find(settings.dep2Wrap); var lastIdx; var timer = null; $gnbDep1.children('li') .mouseenter(function(){ $gnbDep2.hide(); var curIdx = $(this).index(); $gnbDep1.find('img').each(function(){ if(this.src.indexOf('_.gif')>-1){ this.src =this.src.replace('_.gif','.gif') } }) var img = $(this).find('img')[0]; img.src =img.src.replace('.gif','_.gif') if(lastIdx!=undefined){ $gnbDep2.eq(lastIdx).hide(); } $gnbDep2.eq(curIdx).stop(true, true).slideDown('fast'); lastIdx = curIdx; }) .mouseleave(function(){ var img = $(this).find('img')[0]; img.src =img.src.replace('_.gif','.gif') }); $gnbDep1.mouseleave(function(){ timer = setTimeout(function(){ if(settings.dep1 != null){ $gnbDep1.children('li').eq(settings.dep1).mouseenter(); if(settings.dep2 != null){ $gnbDep2.eq(settings.dep1).find('li').eq(settings.dep2).find('img').mouseover() } } else { $gnbDep2.stop(true, true).slideUp('fast'); } },100); }); $gnbDep2.find('img').hover(function(){ this.src = this.src.replace('.gif','_.gif') },function(){ this.src = this.src.replace('_.gif','.gif') }); $gnbDep2.mouseenter(function(){ if(timer != null) clearTimeout(timer) var img = $gnbDep1.children('li').eq(lastIdx).find('img')[0]; img.src =img.src.replace('.gif','_.gif') }); $gnbDep2.mouseleave(function(){ var img = $gnbDep1.children('li').eq(lastIdx).find('img')[0]; img.src =img.src.replace('_.gif','.gif') if(settings.dep1 != null){ $gnbDep1.children('li').eq(settings.dep1).mouseenter() if(settings.dep2 != null){ $gnbDep2.eq(settings.dep1).find('li').eq(settings.dep2).find('img').mouseover() } } else { $(this).slideUp('fast'); } }); if(settings.dep1 != null){ $gnbDep1.children('li').eq(settings.dep1).mouseenter() if(settings.dep2 != null){ $gnbDep2.eq(settings.dep1).find('li').eq(settings.dep2).find('img').mouseover() } } }); } $.fn.lnb = function(opt){ var settings = $.extend({ data : null, banner : null },opt); return $(this).each(function(){ var $this = $(this); var data = settings.data; var dep2Flag = false; var genHTML = ''; $this.html(genHTML); $('

').appendTo(this).hide(); $('
').appendTo(this); if(settings.banner!=null){ $('#descImgWrap').html(''+settings.banner.alt+''); } $('>ul',this) .mouseenter(function(){ $('#lnb2depWrap').stop(true,true).fadeIn(300) }) .mouseleave(function(){ timer = setTimeout(function(){$('#lnb2depWrap').fadeOut()},10) $('>li',this).find('img').each(function(){ this.src = this.src.replace('.gif','off.gif'); }) }) $('>ul>li',this) .mouseenter(function(){ var idx = $(this).index(); lastIdx = idx; $('#category').empty(); $('#lnb2dep').empty(); if(timer)clearTimeout(timer) if(lastIdx!=undefined){ var allImg = $(this).parent().find('img'); allImg.each(function(){ this.src=this.src.replace('on','off'); }); } var curImg = $(this).find('img')[0] curImg.src = curImg.src.replace('off.gif','.gif'); $('# descImgWrap').html(''); $('#descImgWrap img').hide() var curData = data[idx]; $('#descImgWrap').html('') if(curData.hasMenu.length>0){ $.each(curData.hasMenu,function(i){ $('#category').append(''+this.name+''); }); $('#category a').mouseover(function(){ $(this).siblings('a.on').removeClass('on').end().addClass('on'); $('#lnb2dep').empty(); var cur2DepList = curData.hasMenu[$(this).index()].items //array var lis = '' $.each(cur2DepList,function(j){ lis += '0?' class="hasChild"':'')+'>'+this.name+''; if(this.hasMenu.length>0){ lis += '' } lis += ''; }) $('#lnb2dep').html(lis) $('#lnb2dep li.hasChild ul').hide() $('#lnb2dep li.hasChild').click(function(e){ e.preventDefault(); $(this).children('a').addClass('on'); $(this).siblings('li.hasChild').find('ul:visible').hide().end().find('a.on').removeClass('on') $(this).find('ul').show(); }).eq(0).click(); $('#lnb2dep a').click(function(e){ e.preventDefault(); var szUrl = $(this).attr('href'); if(szUrl && szUrl != '#' && szUrl != ''){ document.location.href = szUrl; } }); }).eq(0).mouseover(); } }) .mouseleave(function(){ $('#descImgWrap img').remove(); if(settings.banner!=null){ $('#descImgWrap').html(''+settings.banner.alt+''); } lastIdx=$(this).index(); }); $('#lnb2depWrap') .mouseenter(function(){ if(timer) clearTimeout(timer); var targetImg = $('#lnb1depWrap img').eq(lastIdx)[0] targetImg.src = targetImg.src.replace('off.gif','.gif'); }) .mouseleave(function(){ var self = this; timer = setTimeout(function(){ $(self).fadeOut(300); $('#lnb1dep').find('img').each(function(){ //this.src=thissrc }); },10); }); }) } })(jQuery);