Javascript 使用传单js+获取组标记的位置;markercluster插件
我正在使用传单JS在地图上绘制出租房屋(也在使用openstreetmap),我正在使用传单.markercluster将这些标记分组到标记簇上,直到用户放大地图 在分组图标上,我显示了分组在该集群中的出租房屋的数量,当您将鼠标放在分组图标上时,我想画一个圆圈。圆圈大小取决于分组标记的数量,我需要圆圈的中心位于标记簇的同一位置 我的问题是,我无法获取集群标记的位置,我试图捕获onMouseOver事件,而我获取的位置是组中第一个标记的位置Javascript 使用传单js+获取组标记的位置;markercluster插件,javascript,leaflet,openstreetmap,mapquest,Javascript,Leaflet,Openstreetmap,Mapquest,我正在使用传单JS在地图上绘制出租房屋(也在使用openstreetmap),我正在使用传单.markercluster将这些标记分组到标记簇上,直到用户放大地图 在分组图标上,我显示了分组在该集群中的出租房屋的数量,当您将鼠标放在分组图标上时,我想画一个圆圈。圆圈大小取决于分组标记的数量,我需要圆圈的中心位于标记簇的同一位置 我的问题是,我无法获取集群标记的位置,我试图捕获onMouseOver事件,而我获取的位置是组中第一个标记的位置 在我的理想情况下,我需要在所有成组标记中间的聚类标记图标
在我的理想情况下,我需要在所有成组标记中间的聚类标记图标,该圆的半径将覆盖所有的分组标记位置,但我的问题是,如何得到分组标记位置。 这是我的markercluster代码
var markers = new L.MarkerClusterGroup();
for (var i = 0; i < addressPoints.length; i++) {
var a = addressPoints[i];
var title = a[2];
var marker = L.marker(new L.LatLng(a[0], a[1]), {
title: title
});
var htmlPopUp = '<div><span class="marker-count">'+title+'</span></div>';
marker.bindPopup(htmlPopUp);
markers.addLayer(marker);
}
map.addLayer(markers);
//Create circleMarker for on Hover
var circleMarker = L.circle([-9999,-9999], "-1").addTo(map);
markers.on('clustermouseover', function (a) {
var circleRadius = a.layer.getAllChildMarkers().length *10000 / Math.pow(map.getZoom(), 3);
circleMarker.setLatLng([a.layer._cLatLng.lat,a.layer._cLatLng.lng]);
circleMarker.setRadius(circleRadius);
});
var markers=newl.MarkerClusterGroup();
对于(变量i=0;i
addressPoints包含标记的纬度和经度点这应该很简单,请尝试:
markers.on('clustermouseover', function (e) {
console.log(e.latlng);
}