我正在尝试从地图中获取所有标记对象并使用它们执行操作。但是地图上还有其他地图对象。有没有办法检查对象是否是标记类型?我在API文档中找不到这个。
var objects = map.getObjects();
objects = objects.filter(function(item) {
//return item is marker?
});
答案 0 :(得分:1)
如果你想获得Markers和DomMarkers,你可以使用实际的类(或基类)?
var markers = objects.filter(function(item) {
return (item instanceof H.map.AbstractMarker);
}
答案 1 :(得分:0)
抱歉延误。我已经为自己找到了它。有两种方法我已经过测试并且正在运行。
第一个例子
map.addEventListener('dragend', function(ev)
var target = ev.target;
if (target instanceof mapsjs.map.Marker) {
//work
}
}, false);
但我需要的是从地图对象列表中获取所有标记并使用它们。我做的是
objects = map.getObjects().filter(function(item) {
return item.type === H.map.Object.Type.MARKER;
});
将地图对象类型与 H.map.Object.Type.MARKER 进行比较就可以了。