Showing
1 changed file
with
12 additions
and
15 deletions
... | @@ -17,6 +17,7 @@ | ... | @@ -17,6 +17,7 @@ |
17 | 17 | ||
18 | <div id="map" style="width:700px;height:400px;"></div> | 18 | <div id="map" style="width:700px;height:400px;"></div> |
19 | <script type="text/javascript" src="https://dapi.kakao.com/v2/maps/sdk.js?appkey=35fccf4b4e2a3179187346f26ed3f988&libraries=services"></script> | 19 | <script type="text/javascript" src="https://dapi.kakao.com/v2/maps/sdk.js?appkey=35fccf4b4e2a3179187346f26ed3f988&libraries=services"></script> |
20 | + | ||
20 | <% if(typeof(result) != "undefined"){ %> | 21 | <% if(typeof(result) != "undefined"){ %> |
21 | <script> | 22 | <script> |
22 | var mapContainer = document.getElementById('map'), // 지도를 표시할 div | 23 | var mapContainer = document.getElementById('map'), // 지도를 표시할 div |
... | @@ -35,11 +36,8 @@ | ... | @@ -35,11 +36,8 @@ |
35 | listData = listData.replaceAll('"','\"'); | 36 | listData = listData.replaceAll('"','\"'); |
36 | listData = JSON.parse(listData); | 37 | listData = JSON.parse(listData); |
37 | 38 | ||
38 | - // var x = 0; | 39 | + var count = 0; |
39 | - // var y = 0; | ||
40 | - // var count = 0; | ||
41 | 40 | ||
42 | - // console.log(listData[1]); | ||
43 | //입력되는 배열명이 listData로 들어오면 됨. | 41 | //입력되는 배열명이 listData로 들어오면 됨. |
44 | listData.forEach(function(addr, index) { | 42 | listData.forEach(function(addr, index) { |
45 | var tmpaddr = ((addr.orgZipaddr).split(','))[0]; | 43 | var tmpaddr = ((addr.orgZipaddr).split(','))[0]; |
... | @@ -48,9 +46,7 @@ | ... | @@ -48,9 +46,7 @@ |
48 | geocoder.addressSearch(tmpaddr, function(result, status) { | 46 | geocoder.addressSearch(tmpaddr, function(result, status) { |
49 | if (status === kakao.maps.services.Status.OK) { | 47 | if (status === kakao.maps.services.Status.OK) { |
50 | var coords = new kakao.maps.LatLng(result[0].y, result[0].x); | 48 | var coords = new kakao.maps.LatLng(result[0].y, result[0].x); |
51 | - // y += result[0].y; | 49 | + count += 1; |
52 | - // x += result[0].x; | ||
53 | - // count += 1; | ||
54 | var marker = new kakao.maps.Marker({ | 50 | var marker = new kakao.maps.Marker({ |
55 | position: coords, | 51 | position: coords, |
56 | clickable: true}); | 52 | clickable: true}); |
... | @@ -60,20 +56,21 @@ | ... | @@ -60,20 +56,21 @@ |
60 | 56 | ||
61 | // 인포윈도우를 생성합니다 | 57 | // 인포윈도우를 생성합니다 |
62 | var infowindow = new kakao.maps.InfoWindow({ | 58 | var infowindow = new kakao.maps.InfoWindow({ |
63 | - content: '<div style="width:150px;text-align:center;padding:6px 0;">' + addr[1] + '</div>', | 59 | + content: '<div style="width:150px;text-align:center;padding:6px 0;">' + '기관명:' + addr.orgnm + '</div>', |
64 | - removable : true | ||
65 | }); | 60 | }); |
66 | - // 마커에 클릭이벤트를 등록합니다 | 61 | + // 마커에 mouseover 이벤트와 mouseout 이벤트를 등록합니다 |
67 | - kakao.maps.event.addListener(marker, 'click', function() { | 62 | + // 이벤트 리스너로는 클로저를 만들어 등록합니다 |
68 | - // 마커 위에 인포윈도우를 표시합니다 | 63 | + kakao.maps.event.addListener(marker, 'mouseover', makeOverListener(map, marker, infowindow)); |
69 | - infowindow.open(map, marker); | 64 | + kakao.maps.event.addListener(marker, 'mouseout', makeOutListener(infowindow)); |
70 | - }); | 65 | + if(count == 1){ |
66 | + map.setCenter(coords); | ||
67 | + } | ||
71 | // 지도의 중심을 결과값으로 받은 위치로 이동시킵니다 | 68 | // 지도의 중심을 결과값으로 받은 위치로 이동시킵니다 |
72 | map.setCenter(coords); | 69 | map.setCenter(coords); |
70 | + //console.log(listData.length); | ||
73 | } | 71 | } |
74 | }); | 72 | }); |
75 | }); | 73 | }); |
76 | - | ||
77 | // 인포윈도우를 표시하는 클로저를 만드는 함수입니다 | 74 | // 인포윈도우를 표시하는 클로저를 만드는 함수입니다 |
78 | function makeOverListener(map, marker, infowindow) { | 75 | function makeOverListener(map, marker, infowindow) { |
79 | return function() { | 76 | return function() { | ... | ... |
-
Please register or login to post a comment