2017-11-11 21 views
1

큰 화면에는 드롭 다운 메뉴가있는 탐색 기능이 있으며 작은 화면에 대해 적절한 반응 동작을 만들기 위해 상위 링크에 preventDefault를 설정했습니다 드롭 다운 메뉴. 그러나 키보드를 통해 사이트를 탐색하려고 시도하고 부모 링크로 이동하여 Enter/Return 키를 누르면 아무 일도 일어나지 않습니다. 이는 클릭 할 때 설정되는 경우에도 해당 링크에 preventDefault가 설정된 결과입니다.tab 및 enter를 탐색 할 때 preventDefault onclick 무시

내비게이션 및 조회수 반환 탭을 통해 preventDefault를 재정의하는 확실한 방법이 있습니까? 이상적으로는 탭으로 이동할 때 상위 링크의 포커스를 감지하고 드롭 다운 메뉴를 표시하여 탭으로 이동할 수 있습니다.

여기

$('.parent-link').click(function (e) { 
    e.preventDefault(); 
    // other things happen, but they're not relevant to this issue 
}; 

답변

0

그것은 나에게 보인다 ... 클릭 기능에 대한 기본 jQuery 코드의 그것과 (모두 마우스와 키보드 이벤트를 포함) 자바 스크립트의 "클릭"이벤트를 교체함으로써 " mousedown "이벤트가 발생하면 링크에서"마우스 "이벤트 만 비활성화하여 키보드 이벤트를 깨끗하게 유지합니다.