HTML에서 요소 (앵커 링크)에서 탭 중지 방지


답변:


265

일부 브라우저는 tabindex="-1"속성을 지원 하지만 모든 동작이 지원되는 것은 아닙니다. 표준 동작이 아니기 때문입니다.


22
오 좋은! 감사! FF3.5, IE8 및 CH3으로 확인했으며 세 가지 모두에서 작동합니다. 정말 감사합니다!
Robert Koritnik

1
이것에 대해 걱정 : zzzzBov이 상태처럼 여기는 , HTML5는 구조에 와서하지 않고이 기능을 표준화. 이제 유죄 브라우저는 이것을 놓친 브라우저입니다.
TechNyquist

1
하이퍼 링크에서 탭 스톱을 비활성화하면 접근성 규칙 (예 : 스크린 리더를 사용하는 사람 등)에 위배됩니다. 이것이 사용자 기반에 문제가되지 않는다는 것을 알고 있다면 문제가 없습니다.
Ricardo Sanchez

73

최신 HTML5 호환 브라우저는 [tabindex] 속성을 합니다 . 여기서 값은 -1요소가 탭되지 않도록합니다.

값이 음의 정수인 경우
사용자 에이전트는 요소에 초점을 맞출 수 있어야하지만 순차적 초점 탐색을 사용하여 요소에 도달해서는 안됩니다.


1
문서 발췌문이 항상 도움이됩니다. ;-) 이것은 이것을 지원하지 않는 사람들이 소수에 속하며 조만간 지원할 것임을 알려줍니다.
Robert Koritnik 2018 년

15

탭 중지없이 여러 요소를 대상으로하려는 요소에 JQuery 핸들러를 적용 할 수 있습니다.

$(document).ready(function () {
    $('.class').attr('tabindex', '-1');
});

그것을하는 한 가지 방법이 될 것입니다 ....


6

난 당신이 자바 스크립트하여이 작업을 수행 할 수 있다고 생각, 당신은을 무시 window.onkeypress하거나 onkeydown, 트랩 탭 버튼을 원하는 순서에 초점을 설정합니다.


2
나는 당신이 다른 답변을 특히 1 년 전에 대답하고 Javascript 사용 하지 않고이 문제 해결 한 답변을 확인했는지 여부를 모르겠습니다 .
Robert Koritnik

2
허용 된 답변뿐만 아니라 OP를 다루지 않더라도 대안 솔루션에 감사드립니다. 비방 할 필요가 없습니다.
Anthony DiSanti

@Anthony DiSanti : 사실이지만,이 특별한 경우에 왜 다른 것이 더 잘 작동한다면 왜 자바 스크립트에 의존하는지 알지 못합니까? 이 질문에 대한 답이 아니라면 왜 여기에 있습니까? 신경 쓰지 마. Javascript는 일반적으로 특정 작업을 수행 할 수없는 경우 수행 할 마지막 단계입니다. 내가 당신을 모욕했다면 미안 @Ammosi. 나는 무례하다는 의미는 아니었다. 늦은 답변 감사합니다.
Robert Koritnik 님

7
표준 기반 HTML 또는 CSS 솔루션이 있으면 Javascript를 피하는 데 동의합니다. 그러나이 경우에는 없습니다. 원래 포스터는 IE8 및 FF3.5 이전의 브라우저를 지원할 필요가 없었지만 작업을 위해 IE6을 다시 지원해야합니다. 따라서 tabindex 솔루션은 적용 할 수 없습니다. 브라우저에서 시장 점유율이 가장 높은 유일한 솔루션을 제공하는 것은 권장하지 않습니다.
Anthony DiSanti

4

href앵커 태그에서 속성을 제거하십시오.


내가 할 수 없다면?
Hakan Fıstık

이러한 종류의 솔루션을 피하기 위해 질문에도 불구하고 자바 스크립트를 사용하려는 경우 href 속성을 제거하려면 jquery 문서 onload를 다음과 같이 사용하십시오.$('[href="whatever-the-url-is"]').removeAttr('href');
Jonas Lundman

6
LOL href를 제거
quemeful
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.