首页 > 解决方案 > 传单地图:点击而不是鼠标悬停在标记上的工具提示

问题描述

我想在点击我的标记时有一个工具提示,但我找不到办法做到这一点。Leaflet 似乎只能在鼠标悬停时打开工具提示。

这是我的代码:

var marker = L.marker([x1, y1], {icon: myIcon})
.addTo(map)
.bindTooltip('<?=$desc[$i]?>', {direction:'top', sticky: false, opacity:0.8, offset:[0, -22] });

感谢您查看此代码。

标签: javascriptleaflettooltip

解决方案


我认为你可以:

  1. 覆盖_initTooltipInteractions中的函数。Layer
  2. 添加另一个方法,比如说bindClickableTooltip,它与 . 共享相同的逻辑bindTooltip。但不是调用_initTooltipInteractions,而是调用另一个方法,其中包含您的自定义逻辑。您应该删除这两行
events.mouseover = this._openTooltip;
events.mouseout = this.closeTooltip;

并将它们替换为

events.click = /* a function which handles opening and closing tooltips */

(类似于触摸设备的第 316 行)


推荐阅读