2016-08-08 3 views
1

브라우저에서 스페이스 바의 기본 기능은 활성화 된 입력이 없으면 아래로 스크롤하는 것입니다. 비슷하게 shift + 스페이스 바 스크롤 상단.스페이스 바를 스크롤하는 Jquery 대화 상자

내 응용 프로그램에서 입력이 활성화되어 있지 않을 때 스페이스 바를 누르면 대화 상자 대신 배경이 스크롤되는 Jquery 대화 상자가 사용됩니다.

그래서 대화 상자 높이가 클 때 (대화 상자에 스크롤 막대가있는 경우) 잘 작동하는 tabIndex = -1을 추가했습니다. 대화 상자가 내가 입력이 활성화 없을 때 사용자가 스페이스 바를 입력을 방지하고 싶지 않아 (만 배경이 스크롤됩니다) 더 스크롤

<div id="contactContainer" class="default-dialog" tabindex="-1"></div> 

이없는 경우 그러나 그것은 작동하지 않습니다. 스페이스 바를 누르면 스크롤이 정상적으로 작동합니다. 대화 상자에 스크롤바가 없으면 스페이스 바를 누르면 아무 일도 일어나지 않습니다.

아무도 같은 상황에 직면 해 있습니까? 제안 해주세요

+0

당신이'fiddle' 또는 제공시겠습니까 스 니펫 (snippet) '을 당신이 지금 가지고있는'대화 '에 올려 놓았습니다. –

+0

물론입니다. 제공 할것이다. –

답변

0

문제는 오버 플로우 요소가있는 컨테이너 클래스입니다. 내가 대화

$('body, .container').addClass('overflow-hidden'); 

을 열기 전에 나는 다음을했고, 나는 대화

CSS의으로 onClose 이벤트 클래스를 제거 :`

.overflow-hidden { overflow: hidden}