2013-02-27 74 views
0

我初始化使用下面的代碼谷歌地圖:在失敗天氣預報地圖沒有設置爲提供的座標

function googleMapinitialize(fenceAddIn){ 
var fenceAdd=new google.maps.LatLng(37.2146,121.5545); 
var mapProp = { 
     center:fenceAdd, 
     zoom:30, 
     mapTypeId:google.maps.MapTypeId.TERRAIN 
}; 

var map = new google.maps.Map(document.getElementById("fenceMap"),mapProp); 

var geocoder = new google.maps.Geocoder(); 
var location = fenceAddIn; //"2001 Gateway PI, San Jose, CA"; 

if(!geocoder) { 
    geocoder = new google.maps.Geocoder(); 
} 

var geocoderRequest = { 
    address: location 
} 

var myCity = null; 
var marker = null; 
var infowindow = null; 
geocoder.geocode(geocoderRequest, function(results, status) { 
    if (status =="" || status == google.maps.GeocoderStatus.ZERO_RESULTS){ 
     alert("'" + location + "' not found!!!"); 
     map.setCenter(fenceAdd); 
    } else if (status == google.maps.GeocoderStatus.OK) { 
     map.setCenter(results[0].geometry.location); 
     fenceAdd = new google.maps.LatLng(results[0].geometry.location.hb,results[0].geometry.location.ib); 
     if (!marker) { 
      marker = new google.maps.Marker({ 
       map: map, 
       raiseOnDrag:false, 
       draggable:true 
      }); 
      marker.setPosition(results[0].geometry.location); 
      google.maps.event.addListener(marker,'click',function(){ 
       if (!infowindow) { 
        infowindow = new google.maps.InfoWindow({ 
         disableAutoPan:true, 
         maxWidth:100 
        }); 
       } 
       var content = '<strong>' + results[0].formatted_address + '</strong>'; 
       infowindow.setContent(content); 
       infowindow.setPosition(results[0].geometry.location); 
       infowindow.open(map, marker);     
      }); 

     } 
    } 
    myCity = new google.maps.Circle({ 
     center:fenceAdd, 
     radius:125, 
     strokeColor:"#0000ff", 
     strokeOpacity:0.1, 
     strokeWeight:0.1, 
     fillColor:"#0000ff", 
     fillOpacity:0.20, 
     map:map 
    }); 

    google.maps.event.addListener(map, 'click', function(){ 
     infowindow.close(); 
    }); 
    google.maps.event.addListener(map, 'dblclick', function(){ 
     window.open("<%=request.getContextPath() %>/jsp/googleMapPopup.jsp?fenceAddress="+$('#haddr').val(),'ADDRESSMAP','height=400,width=600'); 
    }); 
}); 
} 

我送這是一個地理編碼地址和地圖上的銷標記的位置。但是,如果地理編碼失敗,則地圖以中國爲中心。因此,爲了克服這個問題,我將地圖中心重置爲原始的lat長度並在其上繪製圓圈。當我調試代碼時,我發現座標設置正確,但地圖仍然顯示中國地圖。

有人能告訴我如何在這種情況下重置地圖位置?

回答

1

你fenceAdd座標默認爲中國:

206省道,牟平,山東煙臺,中國(37.21401,121.5955285)

如果你不希望地圖中央有,改變這些座標。