/* 1. Ç÷¯±×ÀÎ : JS_UX_Navi_008 2. Á¦ÀÛÀÚ : UX301(http://www.ux301.com, service@ux301.com) 3. Á¦ÀÛÀÏ : 2013-10-25 , ¸¶Áö¸· ¾÷µ¥ÀÌÆ® : 2013-10-25 4. ¶óÀ̼¾½º : µµ¸ÞÀζóÀ̼¾½º */ (function(ux_obj) { function getRequest(a) { if (location.search) { var b = location.search.substr(1); var c = b.split("&"); for ( i = 0; i < c.length; i++) { var d = b.split("&")[i].split("="); if (a == d[0]) return d[1]; } } return null; } var url_ValQuestion = location.search; var url_depthFocus = parseInt(getRequest("depthFocus")); var url_subFocus = parseInt(getRequest("subFocus")); ux_obj.fn.JS_UX_Navi_008 = function(J) { var ux_value = { submenuYpos : 50, submenuYspace : 0, motionType : "none", motionSpeed : 200, delayTime : 0, activeMenu : 'on', key : "" }; ux_obj.extend(ux_value, J); return this.each(function() { var focusOne = url_depthFocus; var focusSub = url_subFocus; var now_focusOne = focusOne; var now_focusSub = focusSub; var timerID; var BANNER_ROOT = ux_obj(this); BANNER_ROOT.css({ position : 'relative' }); BANNER_ROOT.find('img').css({ border : 0, 'font-size' : 0, margin : 0 }); BANNER_ROOT.find('ul, li').css({ 'list-style' : 'none', margin : 0, padding : 0 }); BANNER_ROOT.find('a').css({ border : 0 }); var BANNER_ROOT_NAVI = BANNER_ROOT.find('.UX_NAVI'); BANNER_ROOT_NAVI.css({ position : 'relative' }); var BANNER_MENU = BANNER_ROOT.find(".MenuMain"); var BANNER_MENU_LEN = BANNER_MENU.length; var BANNER_MENU_HEIGHT = parseInt(BANNER_MENU.eq(0).css('height')); var BANNER_MENU_POSX = []; var POSX = 0; for (var i = 0; i < BANNER_MENU_LEN; i++) { var tempW = parseInt(BANNER_MENU.eq(i).find('img').css('width')); BANNER_MENU_POSX[i] = POSX; POSX += tempW; } $.each(BANNER_MENU, function(index, item) { $(this).css({ position : 'absolute', marginLeft : BANNER_MENU_POSX[index], marginTop : 0, fontSize : 0 }); }); for (var i = 0; i < BANNER_MENU_LEN; i++) { var x = BANNER_MENU.eq(i); x.attr('data-uxmainvalue', i); if (ux_value.activeMenu == 'on') { var y = x.find('a').attr('href'); if (y.substr(0, 1) == '#') { y = y.substr(1, -1); } var z = 0; for (var k = 0; k < y.length; k++) { var t = y.substr(k, 1); if (t == "?") { z = 1; } } if (z == 0) { y += "?"; } y += "&depthFocus=" + i + "&subFocus=0&"; if (i == focusOne) { y = ""; } x.find('a').attr('href', y); x.find('a').attr('onfocus', "this.blur()"); } } var BANNER_MENU_SUB = BANNER_ROOT.find(".MenuSub"); var BANNER_MENU_SUB_LENGTH = BANNER_MENU_SUB.length; if (ux_value.submenuYpos >= BANNER_MENU_HEIGHT) { BANNER_MENU_SUB.css({ position : 'absolute', marginTop : BANNER_MENU_HEIGHT, paddingTop : ux_value.submenuYpos - BANNER_MENU_HEIGHT, display : 'none', fontSize : 0 }); } else { BANNER_MENU_SUB.css({ position : 'absolute', marginTop : ux_value.submenuYpos, display : 'none', fontSize : 0 }); } $.each(BANNER_MENU_SUB, function(index, item) { $(this).css({ marginLeft : BANNER_MENU_POSX[index] }); $(this).find('.SubMenu').css({ marginBottom : ux_value.submenuYspace }); }); for (var i = 0; i < BANNER_MENU_SUB_LENGTH; i++) { var tempSub = BANNER_MENU_SUB.eq(i); var tempSubMenu = tempSub.find('.SubMenu'); $.each(tempSubMenu, function(a, b) { $(this).attr('data-uxsubvalue', a); if (ux_value.activeMenu == 'on') { var c = $(this).find('a').attr('href'); if (c.substr(0, 1) == '#') { c = c.substr(1, -1); } var d = 0; for (var k = 0; k < c.length; k++) { var t = c.substr(k, 1); if (t == "?") { d = 1; } } if (d == 0) { c += "?"; } c += "&depthFocus=" + i + "&subFocus=" + a + '&'; if (i == focusOne && a == focusSub) { tempLinkSubHref = ""; } $(this).find('a').attr('href', c); $(this).find('a').attr('onfocus', "this.blur()"); } }); } function setInitFN() { setEventFN(); setMotionFN(); } function setEventFN() { BANNER_ROOT_NAVI.bind("mouseenter", function() { clearTimeout(timerID); }); BANNER_ROOT_NAVI.bind("mouseleave", function() { timerID = setTimeout(setMotionFN, ux_value.delayTime); setFindImgFN(BANNER_MENU.eq(focusOne).find("img"), "src", "_off", "_on"); setFindImgFN(BANNER_MENU_SUB.eq(focusOne).find(".SubMenu").find("img").eq(focusSub), "src", "_off", "_on"); BANNER_MENU_SUB.eq(focusOne).css({ zIndex : 99999 }); }); $.each(BANNER_MENU, function(a, b) { $(this).bind("mouseenter keyup", function() { setFindImgFN($(this).find("img"), "src", "_off", "_on"); now_focusOne = $(this).attr('data-uxmainvalue'); if (now_focusOne != focusOne) { now_focusSub = null; } setMotionFN(); BANNER_MENU_SUB.eq(a).css({ zIndex : 99999 }); }); $(this).bind("mouseleave", function() { setFindImgFN($(this).find("img"), "src", "_on", "_off"); if (now_focusOne != focusOne) { now_focusOne = focusOne; now_focusSub = focusSub; } }); }); $.each(BANNER_MENU_SUB.find('.SubMenu'), function(a, b) { $(this).bind("mouseenter keyup", function() { setFindImgFN($(this).find("img"), "src", "_off", "_on"); now_focusOne = $(this).parent().prev().attr('data-uxmainvalue'); now_focusSub = $(this).attr('data-uxsubvalue'); setMotionFN(); }); $(this).bind("mouseleave", function() { setFindImgFN($(this).find("img"), "src", "_on", "_off"); now_focusOne = focusOne; now_focusSub = focusSub; }); }); } function setMotionFN() { for (var i = 0; i < BANNER_MENU_LEN; i++) { var a = BANNER_MENU.eq(i); var b = BANNER_MENU_SUB.eq(i); if (now_focusOne == i) { switch(ux_value.motionType) { case"fade": b.stop(true, true).fadeIn(ux_value.motionSpeed); break; case"slide": b.stop(true, true).slideDown(ux_value.motionSpeed); break; default: b.show(); } for (var j = 0; j < b.find(".SubMenu").length; j++) { var c = b.find(".SubMenu").eq(j); } } else { switch(ux_value.motionType) { case"fade": b.stop(true, true).fadeOut(ux_value.motionSpeed / 2); break; case"slide": b.stop(true, true).slideUp(ux_value.motionSpeed / 2); break; default: b.hide(); } } } } function setFindImgFN(a, b, c, d) { var e = a.attr(b); if (String(e).search(c) != -1) { a.attr(b, e.replace(c, d)); } } setInitFN(); }); }; } )(jQuery);