2012-06-01 5 views
0

Google지도 api v3에서지도를 만들었으며지도에서 역 지오 코딩을 적용하려고했지만 지오 코딩지도로지도를로드하지 못했습니다.지도지도를 실행했지만 마커가 표시되지 않았습니다. 또한내지도에서 역 지오 코딩이 작동하지 않습니다.

그녀의지도 코드

<script src="http://www.google.com/jsapi"></script> 
    <script type="text/javascript"> 
     var script = '<script type="text/javascript" src="js/cluster'; 
     if (document.location.search.indexOf('compiled') !== -1) { 
     script += '_compiled'; 
     } 
     script += '.js"><' + '/script>'; 
     document.write(script); 
    </script> 

    <script type="text/javascript"> 
     google.load('maps', '3', { 
     other_params: 'sensor=false' 
     }); 
     google.setOnLoadCallback(initialize); 
     var markerClusterer = null; 
     var map = null; 
     var geocoder; 
     var markers = new Array(); 
     function initialize() { 
     var GPS = [ 
{GPS:new google.maps.LatLng(34.019626247176,71.57975666079601), CNT:'Pakistan',REGION:'Peshawar',DIST:'Furqan Enterprises',SHOP:'Jamal Sweets',OWNER:'Ibrar Khan',MOBILE:'0300 989 9008',REGNO:'0000001',ICON:'1.png'}, 
{GPS:new google.maps.LatLng(34.02025371621,71.579215441513), CNT:'Pakistan',REGION:'Peshawar',DIST:'Furqan Enterprises',SHOP:'Usman Medicoz',OWNER:'Usman Hussain',MOBILE:'0344 905 1231',REGNO:'0000002',ICON:'1.png'}, 
]; 
     geocoder = new google.maps.Geocoder();  
     var map_center = new google.maps.LatLng(31.2330555556,72.3330555556); 
     var myOptions = { 
     zoom: 6, 
     scaleControl:true, 
     pancontrol: true, 
     streetViewControl: true, 
     center: map_center, 
     mapTypeControl: true, 
     mapTypeControlOptions: { 
     style: google.maps.MapTypeControlStyle.DROPDOWN_MENU 
    }, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    }  
    map = new google.maps.Map(document.getElementById("map"), myOptions); 
    var infowindow = new google.maps.InfoWindow(); 
      if (markerClusterer) { 
      markerClusterer.clearMarkers(); 
     }   
     for(i=0; i<GPS.length; i++) 
     { 
      geocoder.geocode({'latLng': GPS[i].GPS}, function(results, status) { 
      //map.setZoom(11); 
      var markerImage = new google.maps.MarkerImage(imageUrl, 
      new google.maps.Size(24, 32)); 
      var imageUrl = 'ico/' + GPS[i].ICON;   
      markers[i] = new google.maps.Marker({ 
      position: GPS[i].GPS, 
      draggable: true, 
      icon: markerImage, 
      Info: '<table frame=box><tr><td align="Left"><font face="Arial" size=2 color=#336699>Shop Name:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].SHOP + '</font></td></tr><tr>'+ 
      '<td align="Left"><font face="Arial" size=2 color=#336699>Owner:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].OWNER + '</font></td></tr>'+ 
      '<td align="Left"><font face="Arial" size=2 color=#336699>Mobile:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].MOBILE + '</font></td></tr>'+ 
      '<tr><td align="Left"><font face="Arial" size=2 color=#336699>Distributer:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].DIST + '</font></td></tr><tr>'+ 
      '<tr><td align="Left"><font face="Arial" size=2 color=#336699>Region:</td><td align="Left"><font face="Arial" size=2>'+ GPS[i].REGION + '</font></td></tr>'+ 
      '<tr><td align="Left"></td><td align="Left"><font face="Arial" size=2 color=#336699><a target=_blank href=http://221.120.216.52/elp/sfpl.php?ccode=01&amp;&regno='+ GPS[i].REGNO +'>View</a></td></tr>'+ 
      '<tr><td align="Left"><font face="Arial" size=2 color=#336699>Region:</td><td align="Left"><font face="Arial" size=2>'+ results[1].formatted_address + '</font></td></tr>'+ 
      '</table>', 
      title:GPS[i].SHOP + '(' +GPS[i].DIST + ')' 
      }); 
      markers.push(markers); 
      google.maps.event.addListener(markers[i], 'click', function() { 
      infowindow.setContent(this.Info); 
      infowindow.open(map,this); 
      }); 
      }); 
     } 
     zoom = -1 ? null : -1; 
     size = -1 ? null : -1; 
     markerClusterer = new MarkerClusterer(map, markers, { 
      maxZoom: zoom, 
      gridSize: size   
     }); 


     } 
    </script> 

입니다 어느 날 정보창에 좌표의 가장 가까운 주소를 표시하도록 도와주세요로 map.Here에 표시하는 내지도 링크 및 코드입니다.

+0

여기 내지도 링크 테스트입니다. http://202.125.144.34/Map/Test1.aspx – user1397781

답변

1

모든 국가에서 역 지오 코딩이 작동하지 않습니다. Google에서 제공 한 list of functionality coverage을 참조하십시오.

"지오 코딩"이 "타일과 동일하다"라고 말하면 타일에서 식별 된 위치 만 지오 코딩 될 수 있으며 역 지오 코딩도 제한됩니다. Google은 해당 국가의 모든 곳에 대해 자세히 설명하지 않습니다.

이것은 파키스탄에 적용됩니다.

지오 코더가 리턴 한 상태를 점검하지 않는 경우도 있습니다. 콜백 함수에 전달되고 절대 사용하지 않습니다. 그것은 거의 확실하게 어떤 일이 벌어지고 있는지에 대한 힌트를 줄 것입니다.

+0

내 코드에 추가해야 할 내용 일부 수정 코드 나 줄을 제공하십시오. – user1397781

+0

할 수있는 방법은 없습니다. 역 지오 코더는 다르게 동작합니다. Google의 예 : https://google-developers.appspot.com/maps/documentation/javascript/examples/geocoding-reverse에서 'status'값을 사용하면 실제로 일부 * 지오 코더 데이터가 표시됩니다. 사용할 수 있지만 많지는 않습니다. –

+0

나는 이미이 검사를 사용했으나 이것은 하나의 마커에 대한 배열이 아니므로 배열에 대한 루프를 사용하고 있기 때문에 나는 다중 마커와 함께 작동해야하는 현재 코드를 정정하기를 요구하고있다. – user1397781

관련 문제