programing

링크에 파운드 "#"기호가 있으면 무엇입니까?

nasanasas 2020. 9. 14. 21:16
반응형

링크에 파운드 "#"기호가 있으면 무엇입니까?


일부 사이트를 조사한 결과 URL에 파운드 (#) 기호가 있습니다. 그것은 무엇을합니까?

 <a href="#" >Link name</a>

"조각"또는 "명명 된 앵커"입니다. 문서의 일부링크하는 데 사용할 수 있습니다 . 일반적으로 페이지에 링크하면 브라우저가 페이지 상단에서 열립니다. 그러나 중간에있는 섹션에 연결하면 해당 조각을 사용하여 해당 제목 (또는 기타)에 연결할 수 있습니다.

<a name="whatever"/>페이지 내에 태그 가없는 경우 브라우저는 페이지 상단으로 링크됩니다. 조각이 비어 있으면 페이지 상단으로 만 링크됩니다.

조각의 경우에만 현재 페이지 <a href="#">Link name</a>의 상단에 대한 링크 입니다.

자바 스크립트와 함께 사용되는 링크를 자주 볼 수 있습니다. 표준을 준수하는 HTML에는 href속성이 필요 하지만 자바 스크립트로 요청을 처리하려는 경우 "#"이 합리적인 자리 표시 자 역할을합니다.


... 몇 가지 유용한 팁을 추가하기 위해.

document.location.hashJavaScript에서 액세스하고 변경할 수 있습니다 .

그것은 지정된 앵커 (예를 가리킬 수있다 <a name="top"></a>) 또는 해당 ID (예와 소자 <div id="top"></div>).

자체적으로 (예 :)보기 <a href="#" onclick="pop()">popup</a>는 일반적으로 링크가 JavaScript를 독점적으로 실행하는 데 사용되고 있음을 의미합니다. 이것은 나쁜 습관입니다.

모든 a요소 href에는 유효한 리소스를 가리키는가 있어야합니다. 존재하지 않는 경우 button.


# 앵커에 대한 링크를 나타냅니다.

나는 또한 다른 것을 언급 할 것이다 :

JavaScript를 활성화하는 링크의 href로 '#'을 사용하는 것은 페이지를 맨 위로 스크롤하기 때문에 좋지 않습니다. 대신 javascript:void(0).


파운드 기호 ( #)는 페이지에서 앵커 위치를 나타냅니다. 예를 들어 페이지의 어딘가에 다음을 포함하는 경우 :

<a name="foo"></a>

또는 최근에 :

<div id="foo">*part of page*</div>

그런 다음 href가있는 페이지에서 링크를 클릭 #foo하면 이름 또는 divID 가있는 앵커로 이동합니다 foo.

그러나 href 만 있으면 #페이지 상단으로 이동합니다.


이것은 페이지 자체로 다시 링크됩니다. 실제로 일부 JavaScript를 실행하는 링크와 함께 자주 사용됩니다.

참고 URL : https://stackoverflow.com/questions/2800187/what-is-it-when-a-link-has-a-pound-sign-in-it

반응형