Центрирование маркера в центре деления - PullRequest
0 голосов
/ 28 июня 2019

У меня есть div, который я использую, чтобы держать карту листовки.В настоящее время он выглядит следующим образом:

enter image description here

Я хочу, чтобы маркер находился в центре или около центра div, чтобы его всегда можно было видеть, даже маркердалее влево и вне поля зрения или вне поля зрения в любом направлении.

В настоящее время мой код выглядит следующим образом

var mymap = L.map('mapid').setView([51.505, -0.09], 18);


    L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token=pk.eyJ1IjoibWFwYm94IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', {
        maxZoom: 50,
        attribution: 'Map data &copy; <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, ' +
            '<a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, ' +
            'Imagery © <a href="https://www.mapbox.com/">Mapbox</a>',
        id: 'mapbox.streets'
    }).addTo(mymap);

    L.marker([52.573921, -0.250830]).addTo(mymap)
    .bindPopup('A pretty CSS3 popup. <br> Easily customizable.')
    .openPopup();

    mymap.fitBounds([52.573921, -0.250830]);
    mymap.setView([52.573921, -0.250830]);
    mymap.setZoom(18);

Я получаю, что границы ошибок недействительны.

Я хотел бы, чтобы мой маркер был хотя бы здесь

enter image description here

Ответы [ 2 ]

2 голосов
/ 28 июня 2019

Попробуйте это,

mymap.panTo(new L.LatLng(52.573921, -0.250830));
1 голос
/ 28 июня 2019

Причина ошибки в том, что fitBounds() принимает L.latLngBounds в качестве аргумента, и вы передаете ему один L.point.

Вам нужен другой способ панорамирования карты в желаемом месте в центре - возможно, map.panTo() или map.flyTo(), если вам нужна анимация панорамирования / масштабирования.

...