Моя перша відповідь, мабуть, не працювала, і я зараз стикаюся з тією ж проблемою. Ось новий підхід:
Листовка підтримує подію під назвою contextmenu
. Як видно з документації про події Leaflet тут .
Запускається, коли користувач натискає праву кнопку миші на карті, не дозволяє контекстному меню браузера за замовчуванням показувати, чи є слухачі на цій події.
Так теоретично код
marker.on('contextmenu', function(e) {
this.openPopup();
});
повинен працювати просто чудово. Але, мабуть, реалізація відстає від документації. На сьогодні (Leaflet 0.4.5) contextmenu
подія, очевидно, ще не підтримується на маркерах, хоча вона ідеально працює на полілінійних об'єктах.
Здається, в процесі роботи є робота над тим, щоб цю функцію можна було найближчим часом (див. Дискусії тут і тут ). Отже, я думаю, ми можемо просто сподіватися, що Leaflet працює над цим швидко і дозволяє подію в наступному випуску ...
Редагувати:
ігноруйте те, що я сказав про очікування реалізації. Якщо ви скачаєте останню галузь майстра розробки та самостійно створюєте листівку, ви отримаєте повну підтримку contextmenu
подій на маркерах. Щасливе кодування.