--- a/src/pyams_gis/resources/js/pyams_gis.js Fri Mar 19 13:11:50 2021 +0100
+++ b/src/pyams_gis/resources/js/pyams_gis.js Mon Mar 22 14:57:14 2021 +0100
@@ -253,29 +253,18 @@
'leaflet-markercluster-default');
}
+ // show tooltip
+ var hoverMarker = function(e) {
+ this.openPopup();
+ }
+ // hide tooltip
+ var leaveMarker = function(e) {
+ this.closePopup();
+ }
// click marker
var clickMarker = function(e) {
window.location.href = this.options.clickURL;
}
- // show tooltip
- var hoverMarker = function(e) {
- var icon = this.getIcon(),
- tooltip = this.getTooltip(),
- position = e.containerPoint.y,
- height = $(this.getPane()).parents('.map').height();
- if (position < height / 2) {
- tooltip.options.direction = 'bottom';
- tooltip.options.offset = [0, 0]
- } else {
- tooltip.options.direction = 'top';
- tooltip.options.offset = [0, -icon.options.iconSize[1]]
- }
- this.openTooltip();
- }
- // hide tooltip
- var leaveMarker = function(e) {
- this.closeTooltip();
- }
maps.each(function(idx, elt) {
@@ -316,6 +305,13 @@
markerId: markerConfig.id,
alt: markerConfig.id
});
+ var popup = new L.popup({
+ offset: new L.Point(0, -markers.icon.size[1]),
+ closeButton: false,
+ autoPan: true
+ });
+ marker.addEventListener('mouseover', hoverMarker);
+ marker.addEventListener('mouseout', leaveMarker);
if (markerConfig.href) {
marker.addEventListener('click', clickMarker);
}
@@ -337,16 +333,18 @@
if (markerConfig.img) {
className += ' p-0';
}
- icons[markerConfig.id].bindTooltip(label, {
+ marker.bindPopup(label, {
direction: 'top',
offset: [0, -markerIcon.options.iconSize[1]],
opacity: 1,
- className: className
+ className: className,
+ closeButton: false,
+ autoPan: true
});
- icons[markerConfig.id].addEventListener('mouseover', hoverMarker);
- icons[markerConfig.id].addEventListener('mouseout', leaveMarker);
+ marker.addEventListener('mouseover', hoverMarker);
+ marker.addEventListener('mouseout', leaveMarker);
}
- markersClusterCustom.addLayer(icons[markerConfig.id]);
+ markersClusterCustom.addLayer(marker);
}
leafmap.addLayer(markersClusterCustom);
if (config.adjust === 'auto') {