Отображение счетчика или значка загрузки с помощью метода panTo или flyTo в Leaflet.js - PullRequest
0 голосов
/ 05 ноября 2019

Я использую «Leaflet.js» и перемещаюсь из представления currnet в местоположение пользователя с помощью метода flyTo, закодированного следующим образом:

$('.current').on('click', function() {
    var opts = {
        enableHighAccuracy: true,
        timeout: 5000,
        maximumAge: 0,
    };

    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(cpSuccess,cpFail,opts);
    } else {
        alert("err[1]")
    }
});

/*current position*/
function cpSuccess(position) {
    const currentLat = position.coords.latitude;
    const currentLng = position.coords.longitude;
    map.flyTo([currentLat,currentLng],14);
}
function cpFail(err) {
    console.log(err);
    alert("err[2]");
}

и для отображения значка счетчика или загрузки во время перемещения просмотра пользователями с помощьюМетод flyTo закодирован как Jquery ($ .when () и $ .done ()) следующим образом, но он не работает.

/*current position*/
function cpSuccess(position) {
    const currentLat = position.coords.latitude;
    const currentLng = position.coords.longitude;
    map.flyTo([currentLat,currentLng],14);
    $.when(
        $('.class').addClass('spinner'),
        map.flyTo([currentLat,currentLng],14)
    ).done(function() {
        ('.class').removeClass('spinner');
    });
}
function cpFail(err) {
    console.log(err);
    alert("err[2]");
}

Как отобразить счетчик во время просмотра пользователем, перемещающегося с помощью метода flyTo в листовке,Обратите внимание, что я не могу использовать setTimeout (), поскольку не могу предсказать, сколько времени потребуется для перемещения представления пользователей к месту назначения. А еще я нашел spin.js как плагин к leaflet.js, но ничего не сказано об использовании метода flyTo.

Мне действительно нужна чья-то помощь, спасибо.

...