Клуб API Карт

Как изменить zoom после определения местоположения

kalink-sanya
3 декабря 2015, 16:40

Не получается изменить zoom карты. Местоположение находит, но выставляет при этом максимальны zoom. Делаю вот так:

geolocation = ymaps.geolocation;   

   $('#geolocation').click(function() {

        geolocation.get({

            provider: 'yandex',

            mapStateAutoApply: true

        }).then(function (result) {

            map.geoObjects.add(result.geoObjects);

            map.setZoom(14, {duration: 300});

        });

    });

4 комментария
Подписаться на комментарии к посту

уберите эту строчку

// mapStateAutoApply: true

Убрал. Теперь вообще не переходит к добавленной метке. Я так понимаю надо уже из result как-то центр метки достать и потом перейти к метке и центровать по ней?

    $('#geolocation').click(function() {

        geolocation.get({

            // Выставляем опцию для определения положения по ip

            provider: 'yandex',

        }).then(function (result) {

            map.geoObjects.add(result.geoObjects);

            map.panTo( result.geoObjects.position, {

                delay: 1500

            });

            map.setZoom(14, {duration: 300});

        });

    }); 

Вот так тоже не работает..

map.setCenter(result.geoObjects.get(0).geometry.getCoordinates(), 14, {duration: 300});

Спасибо большое! Все получилось.:-)