2010-02-26 7 views
12

문제를 해결하기 위해 무엇을 검색해야할지 모르겠습니다. 스페이스 바를 누르면 내 페이지 전체가 위로 움직입니다 (아래로 스크롤). 나는 이런 일이 일어나기를 원하지 않습니다. 내 body 태그의 모양이 overflow:hidden 인 경우 페이지와 아무 관계가 없으므로 페이지에 스크롤 막대가 없습니다. 나는 보통 사전 문제 해결 기법을 실행하는데 꽤 능숙하지만이 경우 나는 어디서부터 시작해야할지 모른다. 어떻게이 행동을 멈출 수 있습니까?스페이스 바를 누르면 페이지가 아래로 스크롤됩니까?

추가 정보 :이 대부분의 브라우저에서 예상 된 동작입니다 키 누름을 먹을하지 않는 한 나는 jQuery를 1.4.2

+3

이것은 Firefox와 다른 브라우저의 표준 동작입니다. 자바 스크립트 라이브러리를 사용하는 경우이 방법을 재정의 할 수있는 방법을 제안 할 수 있습니다 ... 그렇습니까? –

+1

이것은 사용자가 마우스를 터치하지 않고 아래로 스크롤 할 수있게 해주는 내장 함수입니다 (적어도 IE8, Firefox, Chrome, Safari 및 Opera에서는). –

+5

경고의 한마디 : 브라우저가 예상 한 동작을 변경하면 웹 사이트에서 그렇게 작동하지 않기 때문에 사람들이 불평 할 수 있습니다. –

답변

18

을 사용하고 있습니다. 나는 그것을 항상 사용하고 그것이 페이지에서 작동하지 않을 때 극도로 짜증을냅니다. 당신이

window.onkeydown = function(e) { 
    return !(e.keyCode == 32); 
}; 
2

... 키를 먹고 싶은 경우에

은 그러나 당신이 설명하는 동작은 꽤 표준입니다. 페이지보다 큰 콘텐츠를 만드는 경우 왜 그 중 일부를 숨기고 있습니까?

7

그냥 충분하지 않습니다. 숨기기 오버 플로우; 실제로는 이 아니고이 오버플로되어야합니다. 키 스트로크를 먹으면서 다른 컨테이너 내부에 포커스를 두는 등의 동작을 비활성화 할 수있는 경우에도 사용자는 키보드를 통해 스크롤하거나 페이지에서 텍스트를 드래그하여 선택하거나 마우스 가운데 버튼을 누른 채로 잡을 수 있습니다. .. 브라우저에 달려 있습니다. 콘텐츠가 여전히 기술적으로 인데으로 보이는 한보기에는 스크롤 할 수있는 방법이있을 것입니다.

레이아웃을 다시 생각하는 시간입니다.

관련 문제