2011-12-08 37 views
2

我正在使用mapquest從Javascript API中添加以下代碼的新位置。mapquest指向以Javascript中的POI地圖爲中心

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而不是默認的POI。我認爲這可能有一些API,但到目前爲止我無法找到它。請幫幫我。

回答

5

您應該使用

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

它將工作。

+0

setCenter和slideMapToPoint有什麼區別? –

2

您需要做的就是使用新創建的poi對象的latLng屬性針對地圖調用slideMapToPoint函數。

// 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));