> 웹 프론트엔드 > JS 튜토리얼 > Javascript_javascript 팁에서 A 태그를 사용하여 현재 디렉토리의 절대 경로를 얻는 방법

Javascript_javascript 팁에서 A 태그를 사용하여 현재 디렉토리의 절대 경로를 얻는 방법

WBOY
풀어 주다: 2016-05-16 16:11:44
원래의
1765명이 탐색했습니다.

경로 관련 문제라면 누구나 window.location을 떠올릴 것입니다. 실제로 이 객체는 상당히 많은 경로 정보를 제공하며 그 중 일반적으로 사용되는 정보는 다음과 같습니다.

1.location.href: 현재 페이지의 전체 URL
2.location.pathname: 현재 URL의 경로 이름
3.location.hash: 현재 URL의 앵커 포인트
4.location.search: 현재 URL의 쿼리 매개변수

단, 위치에는 현재 디렉터리의 절대 경로(파일명 제외)를 직접적으로 얻을 수 있는 속성이 없습니다. 구글을 통해서 URL을 "/"로 배열로 분리하고 배열의 마지막 항목을 제거한 후 문자열로 연결하는 등 잘못된 방법을 몇 가지 발견했습니다. 하지만 URL에 파일명이 명시되어 있지 않으면 결과는 완전히 잘못된 것입니다.

과거 코딩 경험에 따르면 a 요소의 href 속성은 항상 절대 경로를 반환합니다. 즉, 상대 경로를 절대 경로로 변환하는 기능이 있음을 의미합니다. 다음 코드를 사용하여 시도해 보았더니 제대로 작동했습니다.

코드 복사 코드는 다음과 같습니다.

var a = document.createElement('a');
a.href = './';
경고(a.href);
a = null;

아쉽게도 이전 IE 6/7에서는 이 방법이 유효하지 않습니다. 나중에 누군가가 Stackoverflow에서도 이 질문을 했다는 것을 알았고 해결책은 매우 간단했습니다. innerHTML을 통해 삽입하면 됩니다.
코드 복사 코드는 다음과 같습니다.

var div = document.createElement('div');
div.innerHTML = '";
경고(div.firstChild.href);
div = null;

누군가는 다음과 같이 질문할 수 있습니다. 왜 정규식을 사용하지 않습니까? 내 대답은 다음과 같습니다. 파일 이름이 있는지, 앵커 포인트가 있는지, 쿼리 매개변수가 있는지 여부를 고려해야 합니다. 이 정규식은 상당히 복잡할 수 있습니다.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿