2010-12-20 5 views
0

여러 페이지가 있습니다. Mootools 슬라이딩 탭을 사용하여 메뉴의 각 단추가 다음 양식으로 슬라이드됩니다. 같은 HTML 페이지에 기술적으로 3 가지 형식이 있습니다. http://creativepony.com/archive/demos/sliding-tabs/자바 스크립트로 탭 순서 설정

내 문제는 사용자가 탭 키를 누르고 마지막 필드까지 탭 순서를 원할 때 첫 번째 필드로 돌아갈 때입니다. 이것은 사용자가 실수로 다음 양식으로 이동하지 않도록하기위한 것입니다. 사용자는 같은 양식 필드를 중심으로 반복적으로 되돌아갑니다. 사용자가 다음 양식에 도달하기 위해 메뉴를 사용하므로 사용자가 다음 양식으로 이동할 수 없도록하고 싶습니다.

'tabindex'를 사용하여 탭 순서를 설정하고 있다는 것을 알고 있지만 사용자가 해당 양식의 첫 번째 필드로 돌아가는 데 도움이되지 않습니다.

어떤 아이디어를 자바 스크립트로 이것을 달성하는 방법?

답변

1

당신은 이벤트 리스너를 통해이 작업을 수행 할 수 있습니다 브라우저를 건너 뛸 알 수 있도록

$$(".foo").addEvent("click", function(e) { 
    if (e.keyCode == 9) new Event(e).stop(); 
    $("#myfield").focus(); 
}); 
+0

jQuery 솔루션입니까? 그렇다면, 그것은 나에게 맞지 않습니다. –

+0

아니요, MooTools를 사용합니다. 2 년 전 MooTools를 코딩 할 때 기억할 수있는 것보다 적어도. – doque

+1

아, OP가 Mootools를 사용하고 있다는 말을 간과했습니다. 그 프레임 워크를 잘 모르지만, 현재 이벤트가 전파되는 것을 막기 위해'새로운 이벤트 (New Event) '를 발행하는 것이 정말로 필요합니까? 그리고'keydown' 이벤트를'click' 대신 사용하지 않아야합니까? –

2

내가, disabled 보이지 않는 형태의 필드를하여 이런 짓을 했을까에 관계없이 탐색 메커니즘 (접근성 보조 장치를 생각해보십시오).

+0

사실,이 솔루션은 나에게 가장 적합합니다. 사용자가 두 번째 양식으로 '탭'할 수 없다면, 항상 그곳을 가리키고 클릭 할 수 있습니다. –