2010-12-18 3 views
0

나는 형식이 있습니다. 메뉴 모음, 회사 아이콘, 일부 링크 및 10 개의 입력 [type = 'text']이 포함됩니다. 필자는 5 개의 입력에 대해서만 tabindex 속성을 작성했습니다. 왜냐하면이 5 가지 입력 만 집중할 수 있도록 만들고 싶기 때문입니다. 내가 어떻게 할 수 있니?html tabindex 속성

+0

-1? 왜? 그것은 간단한 질문이었습니다 또는 그 밖의 무엇입니까? – AEMLoviji

답변

4

tabindex은 항목의 색인 순서를 설정하지만 어떤 요소를 집중시킬 수 있는지에 대한 제한을 설정하지 않습니다.

당신은 마지막 입력 다음과 같은 자바 스크립트를 제공하여 당신이 원하는 것을 달성 할 수 있어야 다음 ready() 블록,

<input onblur="$('#firstitem').focus();"> 

또는 대안을

$("#lastitem").blur(function() { $('#firstitem').focus(); }) 

그와 그하지만 명심 , 사용자는 키보드를 사용하여 페이지를 탐색 할 수 없게됩니다.

+0

+1, 당신이 말했듯이 접근성 재앙이 될 것입니다. –

+0

yesss. greate. 단순한. 그러나 생각하지 않았다. 나는 키보드를 사용하여 페이지를 탐색 할 수있는 사용자의 능력을 빼앗아 갈 것임을 알고 있습니다. 그러나이 페이지에서만. :-) 나는 그것을 찾았다. 고맙습니다 .. – AEMLoviji

6

접근 1 : 상대적으로 약한 브라우저를 지원하는 유해는

당신이 포커스를 취득하지 않으 모든 요소에 부정적인 tabIndex 값을 설정합니다 (그것은 HTML5 draft에 따라 다름).

이렇게하면 일부 사용자 (특히 마우스가 아닌 사용자의 비율이 높은 스크린 리더 사용자)가 페이지의 해당 요소에 액세스 할 수 없게됩니다.

접근법 2 : 똑같이 해를 끼치지만 상대적으로 높은 브라우저를 지원합니다.

JavaScript를 사용하여 포커스를받지 않으려는 모든 요소에 onfocus 이벤트 처리기를 바인딩합니다. 첫 번째 폼 컨트롤의 focus() 메서드라고 부릅니다.

이 중 하나를 수행하는 것은 사용자를 부적절하게 만드는 행위입니다. 하지 마.

+0

대담한 경고에 대한 +1 – thejh

+0

+1 당신의 대답은 정확합니다 – AEMLoviji

+0

+1은 접근의 위험과 경고를 나타냅니다 – XMen