아무것도하지 않는 링크를 원합니다. 나는 이것을 원하지 않는다 :
<a href="#">
URL은 something.com/whatever/#
.
내가 링크를 원하는 유일한 이유는 사용자가 텍스트를 클릭 할 수 있다는 것을 알 수 있기 때문입니다. 자바 스크립트는 어떤 작업을 수행하는 데 사용되기 때문에 링크가 아무데도 갈 필요는 없지만 링크처럼 보이려면 링크가 필요합니다!
일부 데이터 속성을 사용하고 CSS에이 속성이있는 경우 요소가 링크처럼 보이도록 할 수 있지만 약간 지나친 것처럼 보입니다.
답변
다음은 href가 실행되지 않도록합니다.
<a href="#" onclick="return false;">
jQuery를 사용하는 경우 event.preventDefault()
사용할 수 있습니다.
답변
이 시도:
<a href="javascript:void(0);">link</a>
답변
HTML5에서 이것은 매우 간단합니다. href
속성을 생략하십시오 .
<a>Do Nothing</a>
에서 는 A 태그의 HREF 속성에 MDN :
href
이것은 하이퍼 텍스트 소스 링크를 정의하는 앵커에 대한 단일 필수 속성 이었지만 HTML5에서는 더 이상 필요하지 않습니다.
마우스 오버시 손 모양 커서는 어떻습니까?
브라우저의 기본 스타일은가 a
없는 태그의 경우 커서를 포인터로 변경하지 않을 수 있습니다 href
. 다음 CSS를 사용하여 보편적으로 변경할 수 있습니다.
그러나 더 선택적으로 이벤트 처리기를 추가하려는 요소에만 적용하는 것이 좋습니다.
탭 중심으로 만드는 것은 어떻습니까?
tabindex="0"
요소에 추가 하기 만하면 됩니다.
<a tabindex="0">Do Nothing</a>
a
링크없이 태그 를 사용하는 것이 합리적 입니까?
일반적으로 아니요, button
대신 요소 를 사용하고 CSS로 스타일을 지정하는 것이 좋습니다. 그러나 사용하는 것이 무엇이든간에 div
의미 론적이지 않으므로 가능 하면 임의의 요소를 사용하지 마십시오 .
답변
링크로 만들지 말고 (선호하는 것이 좋지만) CSS로 스타일을 지정하여 링크처럼 보이게합니다.
p.not-a-link { text-decoration: underline; cursor: pointer }
또는 링크로 만들고 링크 e.preventDefault()
를 방지하는 데 사용되는 자바 스크립트 기능을 사용하는 것이 더 좋습니다 .
또한 href
JS가 활성화되지 않은 사용자가 여전히 사용할 수 있도록 링크를에 추가하십시오 (대체로).
답변
<a href="javascript:;">Link text</a>
-그게 제가 보통 사용하는 것입니다
답변
우리는 일반적으로 표현식 평가와 정의되지 않은 반환을 포함하는 javascript void를 사용하여이를 달성 할 수 있습니다. javascript:void(0);
href .
void 연산자는 일반적으로 “void (0)”( “void 0″과 동일)를 사용하여 정의되지 않은 기본 값을 얻는 데만 사용됩니다. 이 경우 전역 변수 undefined를 대신 사용할 수 있습니다 (기본값이 아닌 값에 할당되지 않았다고 가정).
a {
text-decoration: initial;
}
<a href="javascript:void(0);"> This link actually does nothing when clicked</a>