1 问题描述
地图上的marker一般都不止一个,那么我们如何多添加几个marker呢?
2 算法描述
当我们初始化marker后,我们要在geometries多添加几个marker,geometries中的position是地图上的经度纬度,marker标记就是根据经度纬度来标记的。当我们想多添加几个marker时就容易出现错误,添加的marker应该写在哪里,如果写错了也不会运行出结果,我在多添加marker时就写错了位置,经过几遍的摸索终于明白应该如何把新一个marker放对正确位置,每一个新的marker都是写在一对{}里面,新的一个marker与上一个marker之间需要用一个英文逗号隔开,代码如下:
var marker = new TMap.MultiMarker({ id: 'marker-layer', map: map, styles: { "marker": new TMap.MarkerStyle({ "width": 24, "height": 35, "anchor": { x: 12, y: 35 }, "src": 'https://mapapi.qq.com/web/lbs/javascriptGL/demo/img/markerDefault.png' }) }, geometries: [{ "id": 'demo1', "styleId": 'marker', "position": new TMap.LatLng(39.984104, 116.307503), "properties": { "title": "marker" } },{ "id": 'demo2', "styleId": 'marker', "position": new TMap.LatLng(39.974104, 116.347503), "properties": { "title": "marker" }, },{ "id": 'demo3', "styleId": 'marker', "position": new TMap.LatLng(39.994104, 116.317503), "properties": { "title": "marker" }, }] }); |
---|
3 结语
在多添加几个marker时应注意添加所在位置,因为初始化marker的代码中的括号很多,需要注意哪对括号包含的哪些内容,不然在添加marker时就会出错。