2

我正在使用 mapquest 使用来自 Javascript API 的以下代码添加新位置。

  window.map = new MQA.TileMap(       /*constructs an instance of MQA.TileMap*/
    document.getElementById('map'),   /*ID of element on the page where you want the map added*/
    7,                                /*intial zoom level of the map*/
    {lat:17.73, lng:83.3}, /*center of map in latitude/longitude */
    'map');                           /*map type (map)*/

    var poi=new MQA.Poi({lat:data.lat, lng:data.lng});
    map.addShape(poi);

现在,我想要的是,地图应该以新添加的 POI 为中心,而不是默认的。我认为这可能有一些 API,但到目前为止我无法追踪它。请帮我。

4

2 回答 2

5

你应该使用

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

它会起作用的。

于 2011-12-15T11:55:12.203 回答
2

您需要做的是slideMapToPoint使用新创建的 poi 对象的 latLng 属性针对地图调用该函数。

// Create new POI
var poi = new MQA.Poi({lat:data.lat, lng:data.lng});
map.addShape(poi);

// Centre the map to the given POI.
map.slideMapToPoint(map.llToPix(poi.latLng));
于 2011-12-13T02:40:48.450 回答