모바일 웹앱에서 팝업창으로 띄울경우 에러가 나온다.
따라서, 다음과 같은 방법으로 적용.
<!-- 다음 우편번호 찾기 리스트를 띄울 영역을 지정 --> <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)
댓글 남기기