34

最初,我的地图将指向用户的当前位置。我提供了一个选项,他可以从自动完成框中选择一个城市,一旦他从自动完成中选择了新位置,我将获得一个新的(纬度,经度)坐标,我想将地图聚焦到该坐标上。

根据我对 Maps API 的了解,我可以将其视为更改中心(但是,中心仅在加载地图时设置)。我想将此重点放在谷歌地图上用户选择的位置上。有人可以帮我吗。提前致谢。使用谷歌地图 js api v3。

4

3 回答 3

77

您可以简单地使用 移动地图map.setCenter(LatLng)。此方法不会使用任何其他标记,也不会擦除现有标记。您也可以通过该panTo(LatLng)功能移动地图。这两种方法在地图初始化后也可用。

这是这些方法的文档

于 2012-09-23T18:13:27.167 回答
15

jOnes是对的,你需要使用setCenter()

function initialize()
{
    var mapDiv = document.getElementById('MapDiv');
    var map;
    var address = "Vilnius, Lithuania";
    var geocoder = new google.maps.Geocoder();
    // Get LatLng information by name
    geocoder.geocode({
        "address": address
        }, function(results, status){
                map = new google.maps.Map(mapDiv, {
                // Center map (but check status of geocoder)
                center: results[0].geometry.location,
                zoom: 8,
                mapTypeId: google.maps.MapTypeId.ROADMAP,
            })
        });
}
于 2012-09-23T18:32:52.840 回答
3
map.setCenter(new google.maps.LatLng(LATITUDE, LONGITUDE));

或者

map.setCenter({lat: LATITUDE, lng: LONGITUDE});

此返回无值

于 2018-05-05T08:02:16.883 回答