다음 주소/네이버 지도 api 사용
html
<h1>Api 샘플</h1>
<h2>1. 다음(카카오) 주소찾기</h2>
<input type="text" id="postCode" placeholder="우편번호" readonly>
<input type="button" id="" onclick="addSearch()" value="우편번호 찾기"><br>
<input type="text" id="roadAddr" placeholder="도로명주소"readonly>
<input type="text" id="jibunAddr" placeholder="지번정보"readonly>
<input type="text" id="detailAddr" placeholder="상세정보">
<h2>2. 네이버 지도</h2>
<div id="map" style="width:100%;height:500px;"></div>
javascript
<script src="//t1.daumcdn.net/mapjsapi/bundle/postcode/prod/postcode.v2.js"></script>
<script type="text/javascript" src="https://openapi.map.naver.com/openapi/v3/maps.js?ncpClientId=2i99b6lxe8&submodules=geocoder"></script>
<script type="text/javascript">
function addSearch(){
new daum.Postcode({
oncomplete: function(data) {
console.log(data)
document.querySelector("#postCode").value = data.zonecode;
document.querySelector("#roadAddr").value = data.roadAddress;
document.querySelector("#jibunAddr").value = data.jibunAddress;
}
}).open();
}
var mapOptions = {
center: new naver.maps.LatLng(37.5674, 126.9830),
zoom: 20,
zoomControl : true,
zoomControlOption : {
position : naver.maps.Position.TOP_RIGHT,
style : naver.maps.ZoomControlStyle.SMALL
}
};
var map = new naver.maps.Map('map', mapOptions);
var markerOptions = {};
var marker = new naver.maps.Marker({
position : new naver.maps.LatLng(37.56793990753354, 126.98311454509121),
map : map
});
var contentStr = "<div><h3>kh정보교육원</h3><p>서울시 중구 남대문로 120 대일빌딩 3F</p></div>";
var infoWindow = new naver.maps.InfoWindow({
content : contentStr
});
infoWindow.open(map,marker);
naver.maps.Event.addListener(marker,"click",function(e){
if(infoWindow.getMap()){
infoWindow.close();
}else{
infoWindow = new naver.maps.InfoWindow({
content : contentStr
});
infoWindow.open(map,marker);
}
});
naver.maps.Event.addListener(map,"click", function(e) {
marker.setPosition(e.coord);
if(infoWindow.getMap()) {
infoWindow.close();
}
naver.maps.Service.reverseGeocode({
location : new naver.maps.LatLng(e.coord.lat(),e.coord.lng())
}, function(status, response) {
console.log(response)
var data = response.result;
var items = data.items;
var address = items[1].address;
contentStr = "<div><p>" + address + "</p></div>";
});
});
</script>
- 네이버 api의 경우 네이버developers 홈페이지에서 사용할api들을 지정해서 url을 등록하고 id를 받아 적어줘야 사용가능