2013-09-27 5 views
0

내 마우스 포인터를 내 메뉴에서 제거하면 모두 사라져서 매우 짜증납니다. 메뉴를 실수로 슬라이드하거나 hoverIntent를 사용했을 때 메뉴가 더 용서해 지도록 조금 지연 시키려합니다. 문제는 내가 얼마나 구글인지에 상관없이, 나를 위해 충분히 이해할 수있는 가이드가있는 곳은 어디에도 없다. 나는 javascripting에 관해서 진짜 초보자이다. :)megamenu에 지연 추가하기 호프 워드 프로세서

내가 그림 scripts.js에서이 발견은 메뉴 속성을 가져 제어하는 ​​프로그램은 다음과 같습니다

// STARTS MEGA MENU 
var temp, menu = jQuery("#navigation .menu"); 
menu.find("li").hover(function(){ 
    jQuery(this).children('.children').hide().slideDown('normal'); 
    if(jQuery(this).hasClass('mega-item')) 
     jQuery(this).children('.children').find('.children').hide().slideDown('normal'); 
    try{ 
     $tmp=(jQuery(this).children('.children').offset().left+jQuery(this).children('.children').width())-(jQuery("#header .twelve").offset().left+jQuery("#header .twelve").width()); 
     if($tmp>0){ 
      jQuery(this).children('.children').css("right","0"); 
     } 
    } 
    catch(e){} 
},function(){ 
    jQuery(this).children('.children').stop(true,true).hide(); 
}); 

menu.children("li").each(function(){ 
    temp = jQuery(this); 
    if(temp.children().hasClass("children")) 
     temp.addClass("showdropdown"); 

    if(temp.hasClass('rel')) 
     temp.find('.children').append('<span class="mg-menu-tip" style="width:'+temp.width()+'px"></span>'); 
    else 
     temp.find('.children').append('<span class="mg-menu-tip" style="left:'+(temp.position().left-20)+'px;width:'+temp.width()+'px"></span>'); 
}); 


menu.find(".children.columns").each(function(){ 
    $countItems=1; 
    jQuery(this).children(".mega-item").each(function(){ 
     temp = jQuery(this); 
     if(temp.hasClass("clearleft")){ 
      $countItems=4; 
     }else if(($countItems%3)==1 && $countItems!=1){ 
      temp.addClass("clearleft"); 
     } 
     $countItems++; 
    }); 
}); 
$i = 0; 
menu.find(">li>ul.children").each(function(){ 
    jQuery(this).find('>li>ul.children').parent().find('>a>span').addClass('menu-span-arrow').html('â–º'); 
}); 
menu.find("ul.children>li").hover(function(){ 
    jQuery(this).children("ul.children").css('left', (jQuery(this).width()-5)+"px");  
}); 
// END MEGA MENU 

임 미안 이것이 내가하려고 오히려 특정 질문 그러나 모든 시간이 될 수있는 경우 다른 사람들의 질문에서 뭔가를 구현, 내 사이트 충돌 : P

미리 감사드립니다!

EDIT : 제가

hoverIntent가
wp_register_script('hoverIntent2', get_template_directory_uri() . '/js/jquery.hoverIntent.js'); 

functions.php 아래로 등록 wp_enqueue_script ('hoverIntent2')에 의해 잠시 후 대기열있다;

+0

아직도 누군가가 도울 수있는 희망이 게시물을 매일 체크! :) – user2822186

답변

0

SOOO 나는 나를 도와 내 친구를 물어 시간 정도 후,이 (내가 :)와 함께 기쁘게 생각하는) 우리가 결국 무엇을 :

// STARTS MEGA MENU 
var temp, menu = jQuery("#navigation .menu"); 
var menu_show = false; 
var menu_timeout; 
var menu_object; 

menu.find("li").not('.mega-item').hover(function(){ 
    jQuery(this).children('.children').hide().slideDown('normal'); 
    if(jQuery(this).hasClass('mega-item')) 
     jQuery(this).children('.children').find('.children').hide().slideDown('normal'); 
    try{ 
     $tmp=(jQuery(this).children('.children').offset().left+jQuery(this).children('.children').width())-(jQuery("#header .twelve").offset().left+jQuery("#header .twelve").width()); 
     if($tmp>0){ 
      jQuery(this).children('.children').css("right","0"); 
     } 
    } 
    catch(e){} 
},function(){ 
    jQuery(this).children('.children').stop(true,true).hide(); 
}); 

jQuery('#menu-item-2462').hover(function(){ 

    clearTimeout(menu_timeout); 

    menu_object = jQuery(this).children('.children'); 

    if(!menu_show) { 
     menu_show = true; 

     jQuery(this).children('.children').hide().show(); 
     if(jQuery(this).hasClass('mega-item')) 
      jQuery(this).children('.children').find('.children').hide().show(); 
     try{ 
      $tmp=(jQuery(this).children('.children').offset().left+jQuery(this).children('.children').width())-(jQuery("#header .twelve").offset().left+jQuery("#header .twelve").width()); 
      if($tmp>0){ 
       jQuery(this).children('.children').css("right","0"); 
      } 
     } catch (e) {} 
    } 
},function(){ 

    menu_timeout = setTimeout(function() { menu_object.stop(true,true).hide(); menu_show = false;} , 500); 



}); 



menu.children("li").each(function(){ 
    temp = jQuery(this); 
    if(temp.children().hasClass("children")) 
     temp.addClass("showdropdown"); 

    if(temp.hasClass('rel')) 
     temp.find('.children').append('<span class="mg-menu-tip" style="width:'+temp.width()+'px"></span>'); 
    else 
     temp.find('.children').append('<span class="mg-menu-tip" style="left:'+(temp.position().left-20)+'px;width:'+temp.width()+'px"></span>'); 
}); 


menu.find(".children.columns").each(function(){ 
    $countItems=1; 
    jQuery(this).children(".mega-item").each(function(){ 
     temp = jQuery(this); 
     if(temp.hasClass("clearleft")){ 
      $countItems=4; 
     }else if(($countItems%3)==1 && $countItems!=1){ 
      temp.addClass("clearleft"); 
     } 
     $countItems++; 
    }); 
}); 
$i = 0; 
menu.find(">li>ul.children").each(function(){ 
    jQuery(this).find('>li>ul.children').parent().find('>a>span').addClass('menu-span-arrow').html('►'); 
}); 
menu.find("ul.children>li").hover(function(){ 
    jQuery(this).children("ul.children").css('left', (jQuery(this).width()-5)+"px");  
}); 
// END MEGA MENU 

내가이 사람을 도움이되기를 바랍니다! 안부 인사 :