2011-09-06 8 views
1

내 코드를 키보드 키와 통합하여 가능한 적은 코드로 위아래로 이동할 수 있습니다 (내 사이트는 충분히 무겁습니다!). 일부 플러그인을 시도하고 검색 한 적이 있지만 내 작은 경험이 도움이되지 않습니다!내비게이션 메뉴가있는 키보드 단축키

$(function() { 
$('ul.nav a').each(function(i, elem) { 
    $(elem).bind('click', function(event) { 
     event.preventDefault(); 
     var offset = i * 38; 
     $('ul.nav').stop().animate({backgroundPosition: '0 ' + offset + 'px'}, 2000,'easeOutQuart'); 

     var $anchor = $(this); 
     $('html, body').stop().animate({ 
      scrollTop: $($anchor.attr('href')).offset().top 
     }, 2000,'easeOutQuart'); 
      $('ul.nav a').css({'cursor': 'pointer', 'color': '#643D21'}); 
      $anchor.css({'cursor': 'default', 'color': '#995D32'}); 
     event.preventDefault(); 
    }); 
}); 
}); 

HTML 코드 감사

<ul class="nav"> 
    <li><a href="#what">what</a></li> 
    <li><a href="#who">who</a></li> 
    <li><a href="#portfolio">portfolio</a></li> 
    <li><a href="#contact">contact</a></li> 
</ul> 

, 당신은 단지 '#what'에 매핑 될 '1'에 기자를 원한다면, 나는 이런 식으로 뭔가를 할 거라고

답변

0

:

$("document").keypress(function(event) { 
    if (event.which == XX) { 
    location.href="#what"; 
    } 

대안 "= 당신의 연결 ID를 부여"를 사용하는 것입니다

대신 여기서 XX

location.href="#what"; 

의 16,

$('#<ID OF ELEMENT>').click(); 

은 키에 대한 키 입력 값입니다. '1'의 경우 50입니다. this site을 사용하면 하단에있는 예제에서 키의 값이 무엇인지 파악할 수 있습니다. 입력 필드에 커서를 놓고 키를 누르십시오. 출력에서 "which"를 찾으십시오.

또한 페이지의 키 누르기에 적용된다는 점에 유의하십시오. 마우스가 특정 요소 일 때까지 제한하려면 키 누르기 이벤트가 활성화되어야하는 요소에 $ ('document')를 수정하십시오.

관련 문제