모바일 웹앱에서 팝업창으로 띄울경우 에러가 나온다.
따라서, 다음과 같은 방법으로 적용.
<!-- 다음 우편번호 찾기 리스트를 띄울 영역을 지정 -->
<script type="text/javascript">
function openDaumZipAddress() {
// 우편번호 찾기 화면을 넣을 element를 지정
var element_wrap = document.getElementById("wrap");
// wrap 레이어가 off된 상태라면 다음 우편번호 레이어를 open 한다.
if(jQuery("#wrap").css("display") == "none") {
new daum.Postcode({
oncomplete: function(data) {
var addr = data.address; // 최종 주소 변수
// 주소 정보를 해당 필드에 넣는다.
document.getElementById("sample5_address").value = addr;
// 주소로 상세 정보를 검색
geocoder.addressSearch(data.address, function(results, status) {
// 정상적으로 검색이 완료됐으면
if (status === daum.maps.services.Status.OK) {
var result = results[0]; //첫번째 결과의 값을 활용
// 해당 주소에 대한 좌표를 받아서
var coords = new daum.maps.LatLng(result.y, result.x);
//$(".hospitalMenu").css("background", "#fff");
// locationLoadSuccess2(result.y, result.x);
// CURRENT_ADDRES_FIX=addr;
// console.log("CURRENT_ADDRES_FIX : " +CURRENT_ADDRES_FIX);
// 지도를 보여준다.
// mapContainer.style.display = "block";
// map.relayout();
// 지도 중심을 변경한다.
// map.setCenter(coords);
// 마커를 결과값으로 받은 위치로 옮긴다.
// marker.setPosition(coords)
// setCookie(변수이름, 변수값, 기간);
// setCookie("CURRENT_ADDRES_FIX", CURRENT_ADDRES_FIX, 7);
// setCookie("LATITUDE", result.y, 7);
// setCookie("LONGITUDE", result.x, 7);
}
});
}
// 사용자가 값을 주소를 선택해서 레이어를 닫을 경우
// 다음 주소록 레이어를 완전히 종료 시킨다.
, onclose:function(state) {
if(state === "COMPLETE_CLOSE") {
// 콜백함수를 실행하여 슬라이드 업 기능이 실행 완료후 작업을 진행한다.
offDaumZipAddress(function() {
element_wrap.style.display = "none";
});
}
}
}).embed(element_wrap);
// 슬라이드 다운 기능을 이용해 레이어 창을 오픈한다.
jQuery("#wrap").slideDown();
}
// warp 레이어가 open된 상태라면 다음 우편번호 레이어를 off 상태로 변경한다.
else {
// 콜백함수를 실행하여 슬라이드 업 기능이 실행 완료후 작업을 진행한다.
offDaumZipAddress(function() {
element_wrap.style.display = "none";
return false;
});
}
}
function offDaumZipAddress() {
// 슬라이드 업 기능을 이용해 레이어 창을 닫는다.
jQuery("#wrap").slideUp();
}
</script>
























댓글 ( 5)
댓글 남기기