먼저 href 속성과 onclick 이벤트의 실행 순서에 대해 이야기해 보겠습니다. a 태그를 마우스로 클릭하면 onclick 이벤트가 먼저 실행되고 그 다음 href 속성 아래의 액션(페이지 이동 또는 javascript pseudo link), href 속성 아래의 액션을 실행하지 않으려면 onclick이 false를 반환해야 합니다. 일반적으로 onclick="xxx();return false는 다음과 같이 작성됩니다.
href 속성에서 JavaScript 코드 표현식 및 표준 작성 방법을 실행하는 방법
"void는 표현식을 평가하도록 지정하지만 값을 반환하지 않는 Javascript의 연산자입니다.
void 연산자 사용 형식은 다음과 같습니다.
1. javascript:void(표현식)
2. javascript:void 표현식
expression은 평가할 Javascript 표준 표현식입니다. 표현식 외부의 괄호는 선택 사항이지만 작성하는 것이 좋습니다. (구현버전 Navigator 3.0)
void 연산자를 사용하여 하이퍼링크를 지정할 수 있습니다. 표현식이 평가되지만 현재 문서에는 아무것도 로드되지 않습니다. ”
href=#에는 위치 정보가 포함되어 있으며 기본 앵커는 웹페이지 상단인 #top이고, javascript:void(0)는 정보가 없는 데드 링크만 나타냅니다. 따라서 스크립트를 호출할 때는 void(0)
를 사용하는 것이 가장 좋습니다.href는 일반적으로 URL 주소를 가리키며 href="javascript:xxx();"와 같은 javascript를 호출할 수도 있습니다. 문서에서는 다음과 같이 작성할 것을 권장합니다. xx, 그러나 이 방법은 복잡한 환경에서 때때로 이상한 문제를 발생시킵니다. javascript: 프로토콜을 A의 href 속성으로 사용하지 마십시오. 이는 불필요한 창 트리거를 발생시킬 뿐만 아니라 onbeforeunload 이벤트는 IE에서 애니메이션 gif 이미지의 재생을 중지합니다.