2013-06-26 122 views
-1

我需要在這個問題上的幫助,請設置谷歌地圖的縮放等級15

我正在嘗試設置Google Map縮放級別到,但導致地圖無法完全呈現,而是呈現灰色區域

這是地圖的截圖,以明白我的意思

enter image description here

這是我的代碼如下

<script type="text/javascript"> 
    var geocoder; 
    var map; 
    var markersArray = []; 

    function initialize() { 
     geocoder = new google.maps.Geocoder(); 

     var zoomLevel = 6; 
     //(38.5923884129755, 31.0229229927063)39.86619, 35.44768 
     var latlng = new google.maps.LatLng(38.5923884129755, 31.0229229927063); 

     var mapOptions = { 
      zoom: zoomLevel, 
      center: latlng, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     } 

     map = new google.maps.Map(document.getElementById('GoogleMap_Div'), mapOptions); 

     google.maps.event.addListener(map, 'click', function(event) { 
      addMarker(event.latLng); 
     }); 

     var hdnZoom = $("input[id$='hdnZoom']")[0]; 
     var hdnLocation = $("input[id$='hdnLocation']")[0]; 
     if (hdnZoom && hdnLocation) { 
      setMarker(hdnZoom.value, hdnLocation.value); 
     }    
    } 

    function setMarker(zoom, location) { 

     if (zoom && zoom != '' && location && location != '') { 

      var loc = location.split(","); 
      var latlng = new google.maps.LatLng(loc[0].substring(1), loc[1].substring(0, (loc[1].length - 1))); 
      if (latlng) { 
       addMarker(latlng) 
      } 

      map.setZoom(parseInt(zoom)); //zoom = 15 
     } 
    } 

    function addMarker(location) { 
     clearOverlays(); 

     var hdnZoom = $("input[id$='hdnZoom']")[0]; 
     if (hdnZoom) { 
      hdnZoom.value = map.getZoom(); 
     } 

     var hdnLocation = $("input[id$='hdnLocation']")[0]; 
     if (hdnLocation) { 
      hdnLocation.value = location; 
     } 

     marker = new google.maps.Marker({ 
      position: location, 
      map: map 
     }); 

     markersArray.push(marker); 
    } 

此代碼的工作很好,如果縮放級別小於或等於8

+0

看起來像你有一個css問題的地圖控制混亂的方式。 – geocodezip

+0

@geocodezip,但它在其他情況下工作正常,例如,當我將「initialize()」函數中的latlng更改爲var latlng = new google.maps.LatLng(38.5923884129755,31.2229229927063);然後我使用以下latlng latlng = new google.maps.LatLng(38.5923884129755,31.2229229927063)在地圖上添加了一個標記;所有的工作正常,但如果我在添加標記後將縮放級別設置爲15,則問題發生 – sharp

+0

您的css和HTML的外觀如何? – geocodezip

回答

0

不完全呈現在地圖不是由縮放水平所致,請檢查您的經緯度

+0

我改變了latlng在「初始化()」函數爲 var latlng = new google.maps.LatLng(38.5923884129755,31.2229229927063); 然後我使用以下latlng將標記添加到地圖 latlng = new google.maps.LatLng(38.5923884129755,31.2229229927063); 所有的工作正常,但當我試圖設置縮放級別後15添加標記問題發生 – sharp

+0

我想要做的是保存由用戶添加的標記的位置和縮放數據庫的級別,在用戶下次訪問頁面時將標記添加到地圖,並將地圖縮放級別設置爲用戶添加標記時所用的相同級別 – sharp

相關問題