我有一个问题,永久删除层或标记与小叶标记簇。
我可以删除,删除标记,并通过它的DIV ID编辑它的CSS。当我这样做并删除数组时,标记确实消失了,数组也被删除了,但是当我缩小和放大时,标记仍然在那里吗?即使集群的数量减少了一个?
我试过了
layer.removeFrom(markerLayer);但它显示markerLayer未定义。
这将删除所有标记,但当放大和缩小时,它们会再次返回吗?
$(".leaflet-marker-icon").remove(); $(".leaflet-popup").remove();我是不是在集群中遗漏了什么?
我像这样将地图标记添加到集群中,也许这是错误的?
地图:-
var map = L.mapbox.map('map')
.setView([52.450439, -1.729660], 14)
.addLayer(L.mapbox.styleLayer('mapbox://styles/mapbox/streets-v11'));
var markerLayer = L.layerGroup().addTo(map);然后添加我使用的标记:
var markers = new L.MarkerClusterGroup();
//console.log(pointsForMarker);
// Add people to the map:
var status;
var username;
pointsForMarker.forEach((point) => {
username = point.name;
status = point.status;
var client = L.divIcon({
className: 'location-pin',
html: '<img id="operatorimg" src="img/'+point.name+'.jpg"><div id='+username+' class="pin '+status+'"></div>',
iconSize: [60, 60],
iconAnchor: [20, 66]});
//alert (point.name);
var marker = L.marker ([point.lat, point.lng], {
icon: client
});
markers.addLayer(marker);
marker.name = point.name;
status = point.status;
var username = point.name;
marker.bindPopup(username + ' is online now and available');
map.addLayer(markers);我的数据是这样保存和加载的:
const pointsForMarker = [
{ name: 'SAM', lat: 52.4734975, lng: -1.4911260, ID: 100102, status: 'offline'}
]发布于 2021-11-02 05:03:44
如果要从标记群集组中删除所有标记,只需使用其clearLayers()方法:
markers.clearLayers();使用jQuery只会暂时删除当前可见的标记,并且在平移/缩放时,Leaflet.markercluster会自动将它们添加回来。
https://stackoverflow.com/questions/69803851
复制相似问题