2014-12-11 4 views
2

자바 스크립트 콜백을 트리거하는 앵커를 사용하고 있지만 다른 곳으로 이동하지 않는 앵커를 사용하려는 경우 다음 구조의 형식이 의미 상 올바른지 알고 싶습니다. 장소 :비어있는 앵커를 정의하는 의미 상 올바른 방법

자바 스크립트 :

window.addEventListener('load', function() { 
    document.getElementById('AuxAnchor').addEventListener('click', function(e) { 
     // Do something 
     e.preventDefault(); // Don't navigate to anywhere 
    }, false) 
}, false); 

html로 :

<a id="AuxAnchor" href="">Click me</a> 
: 빈 값

정의 href 속성

가 불확정 href 속성
<a id="AuxAnchor" href="#">Click me</a> 

: I가 해야하는 후자 (미정 href 속성)에 하이퍼 외관

<a id="AuxAnchor">Click me</a> 

주 시뮬레이션 것을

누락 인 문서 ID와 href 속성 정의 스타일을 사용하여,하지만 그건 기본적으로 외관상의 문제이고, 그렇게하는 것이 전혀 신경 쓰이지 않습니다.

+0

의미 상 고유 ID는 하나만있을 수 있습니다. 대신 수업으로 바꾸고 싶다고 생각합니다. – Sablefoste

+2

ID는 다른 케이스를 보여주고 싶기 때문에 동일합니다. 동일한 문서에 동시에 나타나기위한 것이 아닙니다. – arielnmz

+1

나는 그것을 필요로하지 않을 때'href'를 전혀 사용하지 않는 것을 선호합니다 .. –

답변

0

모든 옵션은 HTML5에 올바른 : http://www.w3.org/TR/html-markup/a.html

당신이 질문의 다른 각도를 커버 비트 접근성 (장애인) 가이드 라인을 확인하려면 다음

http://www.w3.org/TR/WCAG20-TECHS/SCR35.html

+0

좋아요, 기본적으로 탐색하지 않는 앵커를 사용한다면'# ''을 사용할 것입니다. 그러나이 문서는 advoc ('onclick') 메서드 호출의 사용을 제안합니다. 무겁게 낙심했다. – arielnmz

0

의미 상으로는 속성이 전혀없는 <a></a>을 정의하는 것이 좋습니다. 참조하는
HTML 4.01 spec :

저자는 href, name 또는 id를 지정하지 않는 어떠한 앵커를 지정하지 않는 A 요소, 즉 를 생성 할 수있다.

0

HTML 4.01에서 태그는 하이퍼 링크 또는 앵커가 될 수 있습니다. HTML5에서 태그는 항상 하이퍼 링크이지만 href 속성이 없으면 하이퍼 링크의 자리 표시 자입니다.

HTML5에는 몇 가지 새로운 속성이 있으며 일부 HTML 4.01 속성은 더 이상 지원되지 않습니다. .

관련 문제