2011-11-02 69 views
4

使用Google Maps JavaScript API V3,我已經設置了一個映射來從動態生成的KML文件中提取數據。結果如下: http://theevolvement.org/MapRetailers.php帶有KML的Google地圖不會遵守縮放設置;相反,縮小以適應所有標記

在我的代碼中(在下面複製),我在我的地圖選項中將縮放比例指定爲12。當頁面加載時,它從該分配的縮放開始,但在大約一秒鐘內,縮小地圖(並且移動其分配的中心)以適應所有繪製的點。

我們希望加載具有指定縮放的地圖,不包括所有繪製的數據。所以任何人可以給我的意見,我做錯了將不勝感激。謝謝你們!

<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
    <link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" /> 
    <script type="text/javascript" src="//maps.googleapis.com/maps/api/js?sensor=false"></script> 
    <script type="text/javascript"> 
    function initialize() { 
     var vegas = new google.maps.LatLng(36.1589862,-115.1723833); 
     var myOptions = { 
     zoom: 12, 
     center: vegas, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
     } 
     var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 
     var ctaLayer = new google.maps.KmlLayer('http://theevolvement.org/MapRetailers.php?getKML=1&t=<?=mktime()?>'); 
     ctaLayer.setMap(map); 
    } 
    </script> 
    </head><body onload="initialize()"> 
    <div id="map_canvas"></div> 
    </body> 

回答

9

WOO!我終於想出瞭解決方案!

按KmlLayer功能所需的另一參數,{preserveViewport,用於:真}

var ctaLayer = new google.maps.KmlLayer('<?=$kmlURL?>', {preserveViewport: true}); 
相關問題