Javascript 用传单替换标记。标记群集

Javascript 用传单替换标记。标记群集,javascript,leaflet,leaflet.markercluster,Javascript,Leaflet,Leaflet.markercluster,我正在用一张单张地图向全世界展示这座火山。单击切换按钮时,将显示所有标记。 单击切换按钮时,标记应显示出来 在这里,我想应用集群标记。它不起作用 //创建映射选项 变量映射选项={ 中间:[40.4168,-3.7038], 缩放:2, minZoom:2, maxZoom:18, 最大界限:[ [-75, -190], [90, 190] ], 最大边界粘度:0.5, } //创建贴图对象 var map=新的L.map(“map”,mapOptions); //添加平铺层并添加到地图 L.t

我正在用一张单张地图向全世界展示这座火山。单击切换按钮时,将显示所有标记。 单击切换按钮时,标记应显示出来

在这里,我想应用集群标记。它不起作用

//创建映射选项
变量映射选项={
中间:[40.4168,-3.7038],
缩放:2,
minZoom:2,
maxZoom:18,
最大界限:[
[-75, -190],
[90, 190]
],
最大边界粘度:0.5,
}
//创建贴图对象
var map=新的L.map(“map”,mapOptions);
//添加平铺层并添加到地图
L.tileLayer('https://api.maptiler.com/maps/streets/{z} /{x}/{y}.png?key=8vFNrApGjV6jRicu4ins').addTo(map);
//添加geoJson数据并添加标记和弹出窗口
var geojsonMarkerOptions={
半径:3,
fillColor:#FF0000“,
颜色:“000”,
体重:1,
不透明度:0.2,
填充不透明度:0.5
};
//标记簇
var markerClusters=L.markerClusterGroup();
对于(变量i=0;i”+火山[i].属性.名称_+
'
类型:'+volcano[i].properties.Type\+ '
位置:'+火山[i].properties.Location; var m=L.marker([volcano[i].lat,volcano[i].lng],{icon:geojsonMarkerOptions}) .bindPopup(弹出窗口); markerClusters.addLayer(m); } map.addLayer(markerClusters); //-创建交互式按钮:切换按钮以显示全球火山的开/关 var=null; //为“添加火山”按钮创建事件侦听器 document.getElementById(“addButton”).addEventListener(“单击”,addButton); //添加火山全球功能 函数add(){ 火山点。添加到(地图); }; 函数add(){ if(地图图层(火山点)){ 删除()项; }; 火山点=L.geoJson(火山{ pointToLayer:功能(特性、latlng){ 返回L.circleMarker(latlng、geojsonMarkerOptions); }, onEachFeature:火山搜索 }).addTo(地图); }; //为“全球移除火山”按钮创建事件侦听器 document.getElementById(“removeButton”).addEventListener(“单击”,removeButton); //删除该功能 函数removeWorldwide(){ 删除(地图); }; document.getElementById(“toggleButton”).addEventListener(“单击”,ToggleButtons); //切换火山 函数togglevactors(){ if(地图图层(火山点)){ 删除()项; } 否则{ 世界各地的人(); } };
欢迎来到SO

您的代码显示您从
火山
构建了两组独立的标记: -对于MarkerClusterGroup,作为具有lat和lng属性的对象数组 -对于切换功能,作为传递给传单GeoJSON图层组工厂的GeoJSON功能数组

如果您的
volcano
包含一组兼容的GeoJSON功能,那么第一组(对于MarkerClusterGroup)不应该按照当前的编码方式工作


如果您想让切换功能直接处理MarkerClusterGroup,只需将
火山点添加到MCG而不是地图中即可。您还可以只构建一次,然后切换MCG。

您好,欢迎使用堆栈溢出。您是否使用F12浏览器工具查看是否有错误或调试代码?