我正在尝试使用
将标记添加到地图中L.mapbox.featureLayer({
type: 'Feature',
geometry: {
type: 'Point',
coordinates: [ll[0], ll[1]]
},
properties: {
title: d[i].screen_name,
media: d[i].media_url,
id: d[i].source_id,
text: d[i].text,
userId: d[i].user_id,
'marker-color': '#000',
'marker-symbol': 'star-stroked'
}
}).addTo(map);
方法,但我如何从那里访问该标记? map.getLayerAt(0)还是什么?
没有;出于某种原因在地图上显示..
答案 0 :(得分:1)
根据Mapbox网站上的示例快速模拟了这个:
var map = L.mapbox.map('map', 'examples.map-zr0njcqy');
map.featureLayer.on('ready', function(e) {
var markers = [];
this.eachLayer(function(marker) { markers.push(marker); });
cycle(markers);
});
function cycle(markers) {
var i = 0;
function run() {
if (++i > markers.length - 1) i = 0;
var marker = markers[i];
console.log(marker.getLatLng());
}
run();
}
您可以使用cycle()函数对每个标记执行操作 - 如果您在控制台中查看,您将看到您可以知道访问标记的内部属性,如latLng等。我不知道您想要什么与每个标记有关,所以如果您提供更多信息,我将能够为您提供更多帮助!