将阵列中的标记添加到具有图层支持的传单中的标记簇中
Adding markers from array into markercluster in leaflet with layer support
我正在尝试使用包含纬度、经度、弹出信息和图层定义的多维数组填充传单地图。问题是其中 2 个标记应该转到第 1 层,另外两个应该转到第 2 层。事实上,所有四个标记都属于两层。感谢您的帮助。
var layer1 = new L.LayerGroup();
var layer2 = new L.LayerGroup();
var map = L.map('map', {
minZoom: 3,
maxZoom: 9,
layers: [layer1, layer2]
});
L.tileLayer('http://{s}.www.toolserver.org/tiles/bw-mapnik/{z}/{x}/{y}.png', {
attribution: '© <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>'}).addTo(map);
var overlays = {
"layer1": layer1,
"layer2": layer2
};
L.control.layers(null, overlays).addTo(map);
var markersList = [];
var markersList = [
[41.15,-8.61,'popup1','layer1'],
[41.15,-8.61,'popup2','layer1'],
[41.15,-8.31,'popup3','layer2'],
[41.15,-8.31,'popup4','layer2']
];
var markers = new L.MarkerClusterGroup();
for (var i = 0; i < markersList.length; i++) {
markers.addLayer(new L.marker([markersList[i][0], markersList[i][1]]).bindPopup(markersList[i][2]));
markers.addTo(this[markersList[i][3]]);
};
MarkerClusterGroup 仅支持添加标记,不支持添加图层组。如果要使用layercontrol来实现此目的,则应使用两个标记群集,以便可以切换它们。法典:
var tileLayer = new L.TileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
'attribution': 'Map data © <a href="http://openstreetmap.org">OpenStreetMap</a> contributors'
});
var markersList = [
[41.15, -8.61, 'popup1', 'cluster1'],
[41.15, -8.61, 'popup2', 'cluster1'],
[41.15, -8.31, 'popup3', 'cluster2'],
[41.15, -8.31, 'popup4', 'cluster2']
];
var cluster1 = new L.MarkerClusterGroup();
var cluster2 = new L.MarkerClusterGroup();
for (var i = 0; i < markersList.length; i++) {
this[markersList[i][3]].addLayer(new L.marker([markersList[i][0], markersList[i][1]]).bindPopup(markersList[i][2]));
};
var map = new L.Map('map', {
'center': [0, 0],
'zoom': 1,
'layers': [tileLayer, cluster1, cluster2]
});
var overlays = {
"Cluster 1": cluster1,
"Cluster 2": cluster2
};
L.control.layers(null, overlays).addTo(map);
Plunker的例子:http://plnkr.co/edit/p7AgXAP9OjxVCYH0qczn?p=preview
相关文章:
- 更改图层中单个矢量特征的图标
- 谷歌地图热图图层点半径
- 谷歌地图-更改图层图标大小
- 如何通过ID获取图层对象
- CS5隐藏图层的速度非常慢
- 开放图层导出为 KML 并保留我的地图样式
- 传单问题:使折线的图层组不可单击
- 将图层添加到另一个图层
- 图层删除(图像);在 Kinetic.js 中不起作用
- HTML5 Canvas 的初学者,使用图层
- 如何在“控制缩放”下的“打开图层”上添加一些图像
- 无法让 jQuery floatThead 处理嵌入在选项卡式图层中的表
- 如何在开放层 3 中设置矢量图层选择的样式
- 添加支持异步重新加载的 Web 图层
- 3d图层滑块Wordpress插件:编辑3d颜色
- 在jQuery中移动DOM元素(图层滑块)
- 如何用程序更改传单中的图层
- 从智能对象和图层替换Photoshop中的关键字
- 如何在添加新标记和图层之前清除所有标记和图层的传单地图
- 将阵列中的标记添加到具有图层支持的传单中的标记簇中