如何从Here Maps API javascript更新标记位置

问题描述 投票:0回答:3

所以我有一个小组,我想从这里地图更新这个小组的一个标记位置。

function addMarkerToGroup(group, coordinate, html) {
  var marker = new H.map.Marker(coordinate);
  // add custom data to the marker
  marker.setData(html);
  group.addObject(marker);
}


function addInfoBubble(map) {
  var group = new H.map.Group();

  map.addObject(group);

  // add 'tap' event listener, that opens info bubble, to the group
  group.addEventListener('tap', function (evt) {
    // event target is the marker itself, group is a parent event target
    // for all objects that it contains
    var bubble =  new H.ui.InfoBubble(evt.target.getPosition(), {
      // read custom data
      content: evt.target.getData()
    });
    // show info bubble
    ui.addBubble(bubble);
  }, false);

  addMarkerToGroup(group, {lat:53.439, lng:-2.221},
    '<div><a href=\'http://www.mcfc.co.uk\' >Manchester City</a>' +
    '</div><div >City of Manchester Stadium<br>Capacity: 48,000</div>');

  addMarkerToGroup(group, {lat:53.430, lng:-2.961},
    '<div ><a href=\'http://www.liverpoolfc.tv\' >Liverpool</a>' +
    '</div><div >Anfield<br>Capacity: 45,362</div>');

} 

但是我怎么能更新,这里的api有一些监视或功能,如updateMarkerPosition?

谢谢。

javascript here-api
3个回答
0
投票

您可以简单地在标记上调用setPosition()函数来传递新位置,如下所示:

marker.setPosition( {lat:50.430, lng:-2.961} );

0
投票

您希望如何更新?考虑数据库还是地理定位?或者,也许您只是希望能够将标记拖动到想要的位置?

您可以做的是将2种输入类型的纬度和经度加长。并使用document.getElementById()函数,因此任何人都可以键入坐标,它将更新标记的位置。但是,如果您要使用地址,您的问题将是Using Google maps API v3 how do I get LatLng with a given address?

的重复项

0
投票
marker.setGeography({lat:50.430, lng:-2.961});
© www.soinside.com 2019 - 2024. All rights reserved.