2013-05-22 7 views
0

Google지도를 우편 번호 폴리곤으로 구현했습니다. 즉, 다른 우편 번호 좌표를 사용하여지도 위에 특정 우편 번호 다각형을 그리는 중입니다. 우편 번호 다각형 위에 시장 마커를 보여주고 있습니다. 우편 번호 다각형 또는 마커를 클릭하면 해당 데이터가 포함 된 정보 창이 표시됩니다. 그러나이 창은지도 내에서 열리고 해당 우편 번호/마커를 가리 킵니다. 이제 우편 번호/마커와 관계없이지도 외부에 정보 창을 표시해야하는 요구 사항이 있습니다. 마치 고정 된 영역 (div가 될 수도 있음)을지도 외부에 유지하고 우편 번호 폴리곤 중 하나를 클릭하면 해당 고정 영역 내에 정보 창이 표시됩니다. 우리는 어떻게 그것을 할 수 있습니다.Google지도 외부 정보 창 표시

내 작업 코드

var path = [ 
       {% for polycoord in zip.zip_info.zip_polygon %} 
        new google.maps.LatLng({{polycoord.1}}, {{polycoord.0}}), 
       {% endfor %} 
      ]; 



var polygon = new google.maps.Polygon(
    { 
     path:path, 
     clickable:true, 
     strokeColor: '#000000', 
     strokeOpacity: 0.75, 
     strokeWeight: 1, 
     fillColor: '#333fff', 
     fillOpacity: 1, 
    } 

); 



google.maps.event.addListener(polygon, 'click', function (event) { 
      $.ajax({ 
       type: "GET", 
       url: GET_DATA, 
       data: dataString, 
       success: function(res) { 
        if(res != '') { 
         var contentString = res; 
         var infoWindow = new google.maps.InfoWindow(
             { content: contentString });  
         infoWindow.setPosition(event.latLng); 
         infoWindow.open(map); 
         google.maps.event.addListener(map, 'click', function() { 
          infoWindow.close(); 
         }); 
        } else { 
         alert('No data found') 
        } 
       } 
      }); 
    }); 
+0

값을 가져 와서 다른 div에 삽입 할 수 있습니다. 더 나은 모양을 가질 수 있도록 코드를 게시 할 수 있습니까? – harikrish

+0

안녕하세요 harikrish 내 작업 코드를 추가했습니다. 이 코드를 사용하여 우편 번호 영역을 클릭하면지도 내부에 정보 창이 표시됩니다. – sandeep

+0

[this] (http://www.geocodezip.com/v3_GoogleEx_layer-kml_world_countries_simple.html)과 같은 것이 있습니까? (지도 외부의 div에 클릭 된 국가가 표시됩니다 ...) – geocodezip

답변

0

이 (기존 코드 않는 경우) 작업을해야는 테스트하지.

google.maps.event.addListener(polygon, 'click', function (event) { 
     $.ajax({ 
      type: "GET", 
      url: GET_DATA, 
      data: dataString, 
      success: function(res) { 
       if(res != '') { 
        var contentString = res; 
        document.getElementById('theIdOfYourDiv').innerHTML = res; 
       } else { 
        alert('No data found') 
       } 
      } 
     }); 
}); 
관련 문제