如何通过切换列表在带有过滤器标记的标记上添加click事件? 我的代码可以通过切换列表过滤标记。我想添加一个点击事件,以便每当我单击一个标记时它就会显示弹出窗口。
我已经尝试过map.on点击功能
map.on('load', function () {
map.addSource("places", {
"type": "geojson",
"data": places
});
places.features.forEach(function (feature) {
var symbol = feature.properties['icon'];
var layerID = 'poi-' + symbol;
if (!map.getLayer(layerID)) {
map.addLayer({
"id": layerID,
"type": "symbol",
"source": "places",
"layout": {
"icon-image": symbol + "-15",
"icon-allow-overlap": true
},
"filter": ["==", "icon", symbol]
});
var input = document.createElement('input');
input.type = 'checkbox';
input.id = layerID;
input.checked = true;
filterGroup.appendChild(input);
var label = document.createElement('label');
label.setAttribute('for', layerID);
label.textContent = symbol;
filterGroup.appendChild(label);
input.addEventListener('change', function (e) {
map.setLayoutProperty(layerID, 'visibility',
e.target.checked ? 'visible' : 'none');
});
}
});
});
在哪里可以添加此功能:
map.on('click', 'places', function (e) {});
我想要标记上的点击事件