2011-04-23 98 views
0

当用户 从下拉菜单中选择主地图中的一个地区时,我正尝试让我的地图重新定位到新中心。查看 map here:http://bilware.net/BullyMap/BullyMap.html我的setCenter怎么不起作用?

我可以使用map.setZoom获取缩放比例(尽管它的 注释如下)。但是map.setCenter不起作用。我以为这是 ,因为我没有正确调用LatLng参数,但发现 即使插入固定参数也不行,因为我认为我已经完成了 以下。

我对此很新,任何帮助表示赞赏。

function changeMap() { 
var selected_bully_table = $('#map_menu').val(); 
var searchString = document.getElementById('searchString').value.replace("'", "\\'"); 
if(searchString == "") { 
    layer.setQuery("SELECT 'geometry' FROM " + selected_bully_table); 
    return; 
    } 
layer.setQuery("SELECT 'geometry' FROM " + selected_bully_table + " WHERE 'SDNAME' = '" + searchString + "'"); 

// Now zoom and center the map 
{ 
map.setZoom(9); 
myLatLng=(-91.9240850749,47.9119132072); 
map.setCenter(myLatLng); 
} 
} 

回答

0

更换

myLatLng=(-91.9240850749,47.9119132072); 

myLatLng= new google.maps.LatLng(-91.9240850749,47.9119132072); 
+0

当我这样做时,它会返回灰色屏幕。 – Bilware 2011-04-23 23:13:14

0

您的纬度值应为-90度到+90度之间,也应该通过google.maps.LatLng的新实例类到setCenter函数。

0

两个其他答案的组合会给你你真正的答案。

之所以这样做

myLatLng= new google.maps.LatLng(-91.9240850749,47.9119132072); 

给你一个灰色的屏幕是因为位置在地图的范围之外。如果缩小和滚动地图上方你会看到这个:)

你需要做的是写

map.setZoom(9); 
myLatLng = new google.maps.LatLng(LATITUDE,LONGITUDE); 
map.setCenter(myLatLng); 

,并通过在地图上像的界限内的LATITUDE &经度值( 51,0)。

相关问题