2012-09-14 3 views
0

스크롤이 오버 플로우되는 div에서 작업하고 있습니다. 예상되는 동작은 스크롤 가능한 div가 div를 클릭하거나 스크롤 막대를 클릭하거나 키보드 명령이 활성화 될 때 (예 : 커서 키, 페이지 위로 페이지 아래로 페이지 이동 등) 초점을 맞출 때입니다. 다음은 몇 가지 샘플 테스트 코드입니다.키보드를 사용할 때 Firefox 스크롤 막대가 맞지 않습니다.

<html> 
    <head> 
     <script type="text/javascript"> 
      function handle() { console.log("fired"); }; 
     </script> 
    </head> 
    <body> 
     <div style="width:200px; height:500px; overflow-y: scroll; border: 1px solid gray;" onscroll="handle()"> 
      <div style="width:150px; height:2000px;">&nbsp;</div> 
     </div> 
    </body> 
</html> 

IE, Chrome, Safari에서 작동합니다. 하지만 파이어 폭스의 경우 키보드 동작은 스크롤 막대 자체가 아닌 div를 클릭 할 때만 활성화되므로 문제가됩니다.

답변

1

분명히 div 탭을 만들면 문제가 해결됩니다! tabindex = "0"속성을 추가하고 Firefox에서 스크롤 막대를 클릭하면 키보드 컨트롤이 활성화됩니다.

관련 문제