1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>geolocation으로 마커 표시하기</title> </head> <body> <p style="margin-top:-12px"> <b>Chrome 브라우저는 https 환경에서만 geolocation을 지원합니다.</b> 참고해주세요. </p> <div id="map" style="width:100%;height:350px;"></div>
<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=b0d61840851b6ace9461c5a020647164"></script> <script> var mapContainer = document.getElementById('map'), // 지도를 표시할 div mapOption = { center: new kakao.maps.LatLng(33.450701, 126.570667), // 지도의 중심좌표 level: 10 // 지도의 확대 레벨 };
var map = new kakao.maps.Map(mapContainer, mapOption); // 지도를 생성합니다
// 지도 확대 축소를 제어할 수 있는 줌 컨트롤을 생성합니다 var zoomControl = new kakao.maps.ZoomControl(); map.addControl(zoomControl, kakao.maps.ControlPosition.RIGHT);
// HTML5의 geolocation으로 사용할 수 있는지 확인합니다 if (navigator.geolocation) { // GeoLocation을 이용해서 접속 위치를 얻어옵니다 navigator.geolocation.getCurrentPosition(function(position) { var lat = position.coords.latitude, // 위도 lon = position.coords.longitude; // 경도 var locPosition = new kakao.maps.LatLng(lat, lon), // 마커가 표시될 위치를 geolocation으로 얻어온 좌표로 생성합니다 message = '<div style="padding:5px;">여기에 계신가요?!</div>'; // 인포윈도우에 표시될 내용입니다 // 마커와 인포윈도우를 표시합니다 displayMarker(locPosition, message); }); } else { // HTML5의 GeoLocation을 사용할 수 없을때 마커 표시 위치와 인포윈도우 내용을 설정합니다 var locPosition = new kakao.maps.LatLng(33.450701, 126.570667), message = 'geolocation을 사용할수 없어요..' displayMarker(locPosition, message); }
// 지도에 마커와 인포윈도우를 표시하는 함수입니다 function displayMarker(locPosition, message) {
// 마커를 생성합니다 var marker = new kakao.maps.Marker({ map: map, position: locPosition }); var iwContent = message, // 인포윈도우에 표시할 내용 iwRemoveable = true;
// 인포윈도우를 생성합니다 var infowindow = new kakao.maps.InfoWindow({ content : iwContent, removable : iwRemoveable }); // 인포윈도우를 마커위에 표시합니다 infowindow.open(map, marker); // 지도 중심좌표를 접속위치로 변경합니다 map.setCenter(locPosition); } </script> </body> </html>
|