사용자 동의를 받아 현재 위치 좌표를 조회합니다.
navigator.geolocation.getCurrentPosition은 성공과 실패 콜백을 받습니다. 위치는 민감한 정보라 HTTPS와 명시적 권한이 필요하며 거부·시간 초과를 정상 흐름으로 처리해야 합니다.
버튼을 누르면 먼저 navigator.geolocation이 있는지 확인한 뒤 권한을 확인하는 중...을 띄우고, getCurrentPosition에 성공 콜백, 실패 콜백, 옵션 객체를 차례로 넘깁니다. 성공하면 p.coords의 위도와 경도를 toFixed(4)로 소수 넷째 자리까지 보여 주고, 거부되거나 5000밀리초 안에 위치를 얻지 못하면 실패 콜백이 e.message를 덧붙여 안내합니다.
위치 기능은 다른 출처의 iframe에서 기본적으로 막혀 있어, 부모 문서가 iframe에 allow=geolocation 속성을 붙여 권한을 위임해야 합니다. 이 페이지의 실행 결과 창처럼 위임받지 않은 iframe에서는 권한 창 없이 실패 콜백이 바로 호출될 수 있습니다. 이동하는 위치를 계속 받으려면 watchPosition을 쓰고 clearWatch로 멈춥니다.
페이지 로드 즉시 위치 권한을 요구하지 말고 왜 필요한지 설명한 뒤 사용자 행동으로 요청하세요.
직접 바꿔보세요오류 코드 1, 2, 3에 맞는 사용자 안내 문구를 추가하세요.