이준용

경기도 지역화폐 사용가능편의점 지도에 표시

Showing 1 changed file with 10 additions and 57 deletions
......@@ -5,22 +5,14 @@
<meta charset="utf-8">
<title>다음 지도 API</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://dapi.kakao.com/v2/maps/sdk.js?appkey=9e4f94c8089b558cf9d25a267a86eea9&libraries=clusterer"></script>
<script
src="https://dapi.kakao.com/v2/maps/sdk.js?appkey=9e4f94c8089b558cf9d25a267a86eea9&libraries=clusterer"></script>
</head>
<body>
<div id="map" style="width:100%;height:100vh;"></div>
<script>
$.get("https://openapi.gg.go.kr/RegionMnyFacltStus?Type=json", function (data) {
alert("Data: " + data);
});
var myJson = "{\"lat\":37, \"lng\":130}";
var parsedJson = JSON.parse(myJson);
console.log("originalJson: " + myJson);
console.log(parsedJson);
// document.querySelector('#find-me').addEventListener('click', geoFindMe);
var options = {
......@@ -69,59 +61,20 @@
averageCenter: true, // 클러스터에 포함된 마커들의 평균 위치를 클러스터 마커 위치로 설정
minLevel: 10 // 클러스터 할 최소 지도 레벨
});
var data = [
[37.350040, 127.108901, '<div style="padding: 5px;">Hello World!</div>'],
[37.366090, 127.108056, '<div style="padding: 5px;">Hello World!</div>'],
[37.378040, 127.108245, '<div style="padding: 5px;">Hello World!</div>']
]
var markers = [];
for (var i = 0; i < data.length; i++) {
//지도에 마커를 생성하고 표시한다
$.get("https://openapi.gg.go.kr/RegionMnyFacltStus?key=145a1e1f1f6a4712876cc7b16c6aeaff&Type=json&CMPNM_NM=편의점&pSize=1000", function (data) {
var stores = JSON.parse(data);
var locations = stores.RegionMnyFacltStus[1].row;
locations.forEach(function (element) {
var marker = new kakao.maps.Marker({
position: new kakao.maps.LatLng(data[i][0], data[i][1]),
position: new kakao.maps.LatLng(element.REFINE_WGS84_LAT, element.REFINE_WGS84_LOGT),
map: map // 마커를 표시할 지도 객체
});
var iwContent = data[i][2], // 인포윈도우에 표출될 내용으로 HTML 문자열이나 document element가 가능합니다
iwPosition = new kakao.maps.LatLng(data[i][0], data[i][1]), //인포윈도우 표시 위치입니다
iwRemoveable = true; // removeable 속성을 ture 로 설정하면 인포윈도우를 닫을 수 있는 x버튼이 표시됩니다
// 인포윈도우를 생성하고 지도에 표시합니다
var infowindow = new kakao.maps.InfoWindow({
map: map, // 인포윈도우가 표시될 지도
position: iwPosition,
content: iwContent,
removable: iwRemoveable
});
infowindow.open(map, marker);
markers.push(marker);
kakao.maps.event.addListener(marker, 'mouseover', makeOverListener(map, marker, infowindow));
kakao.maps.event.addListener(marker, 'mouseout', makeOutListener(infowindow));
}
// 클러스터러에 마커들을 추가합니다
clusterer.addMarkers(markers);
function makeOverListener(map, marker, infowindow) {
return function () {
infowindow.open(map, marker);
};
}
// 인포윈도우를 닫는 클로저를 만드는 함수입니다
function makeOutListener(infowindow) {
return function () {
infowindow.close();
};
}
clusterer.addMarkers(marker);
})
});
// 아래 코드는 인포윈도우를 지도에서 제거합니다
// infowindow.close();
</script>
......