当设备移动时,不能从地图上删除原始标记

Can't remove original markers from map when device is mobile

本文关键字:地图 删除 原始 不能 移动      更新时间:2023-09-26

我在一个项目与mapbox工作,我有我自己的图标,我想使用而不是mapbox的原始本地标记。在看到"setIcon"函数没有删除原来的灰色标记,而只是在它们旁边添加了我的图标后,我使用以下css命令删除它们:

.leaflet-container img.leaflet-marker-          icon[src~="http://a.tiles.mapbox.com/v4/marker/pin-    m+7e7e7e.png?access_token=pk.eyJ1IjoiZGF2aWRoYWxmb24iLCJhIjoibzZhZTlJdyJ9.ab2pmxikBxsmsWEvbfYVfw"]{display:none}

它在网页上工作得很好,但是当我在手机上打开网站时,它不起作用,我再次看到我的图标和本机标记。

这是我替换图标的代码:

locations.eachLayer(function(locale) {
var prop = locale.feature.properties;
locale.setIcon(L.icon({
    iconUrl: './icon.png',  
}));
});

这是我的网站:http://www.david-halfon.com/worldRadio/

谢谢你的帮助!

从你的页面来源:

var map = map1.featureLayer.setGeoJSON(geojson)
locations = L.mapbox.featureLayer().addTo(map);
locations.setGeoJSON(geojson);

您正在更改locations层上的图标,但也将相同的数据添加到map1.featureLayer,并且该层具有默认图标