Добавить переадресацию URL-адреса на значок mapbox

Я пытаюсь разрешить щелчок по маркеру mapbox, и при нажатии он автоматически переводит вас на новую ссылку.

Это возможно?

В настоящее время у меня есть карта с 10 местоположениями, и при загрузке уровень масштабирования показывает все. Когда вы нажимаете на место, оно приближает вас к нему.

Теперь я хочу, чтобы вы переходили по URL-адресу по щелчку, а не увеличивали масштаб, однако я не могу найти никакой документации о том, как это сделать.

Я знаю, что это можно сделать с помощью всплывающего окна, содержащего URL-адрес, но есть ли способ удалить лишний шаг.

Спасибо


person Andrew    schedule 20.03.2019    source источник
comment
Не могли бы вы указать, используете ли вы маркер или символ?   -  person AndrewHarvey    schedule 21.03.2019


Ответы (2)


Ответ Себастьяна Буске работает при использовании символа, но при использовании маркера, вам необходимо добавить свой собственный прослушиватель событий кликов, например https://developer.mozilla.org/en-US/docs/Web/API/Element/click_event.

  marker.getElement().addEventListener('click', event => {
    window.location.href = 'https://www.mapbox.com/';
  });
person AndrewHarvey    schedule 20.03.2019

Вы можете использовать событие щелчка на своем слое, чтобы щелкнуть объект, и использовать свойство объекта для создания ссылки:


map.on('click', 'layername', function(e) {
    // Here you can access e.features[0] which is the feature cliked
    // With that you can do whatever you want with your feature
});

person Sébastien Bousquet    schedule 20.03.2019