Клуб API Карт

Как получить значение высоты карты?

tazododu
11 октября 2010, 10:30

Добрый день!

Создал карту с возможностью определения геокоординат 

    $(document).ready(function() {
        YMaps.jQuery(function() {
            map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
            var pointCenter = new YMaps.GeoPoint(<?=$address['lng']?>, <?=$address['lat']?>);
            map.setCenter(pointCenter, 13);
            map.addControl(new YMaps.TypeControl());
            map.addControl(new YMaps.Zoom());
            placemark = new YMaps.Placemark(pointCenter, {draggable: true, hideIcon: false});
            setBalloonInfo(placemark, pointCenter);
            map.addOverlay(placemark);
               
            YMaps.Events.observe(placemark, placemark.Events.Drag, function (mEvent) {
                setBalloonInfo(placemark, mEvent.getGeoPoint());
            });

            YMaps.Events.observe(map, map.Events.Click, function (map, mEvent) {
                var newGeoPoint = mEvent.getGeoPoint();
                placemark.setGeoPoint(newGeoPoint);
                setBalloonInfo(placemark, newGeoPoint);
            })

            function setBalloonInfo (placemark, geoPoint) {
                var content = "Переместите для переопределения <br /> местонахождения офиса";
                placemark.setBalloonContent(content);
                var reg = /,/;
                var str = geoPoint.toString();
                str = str.replace(reg, ", ");
                $('#geo').val(str);
            }
        });

    });

При перемещении балуна либо щелчке пишу значения в скрытый инпут.

Подскажите пожалйста каким образом я могу получать значения высоты карты?

Что пробывал:

добавил

     var zoom = map.getZoom();
     $('#geo_height').val(zoom);

в setBalloonInfo. Значение получаю, но только после клика либо перемещения балуна. Необходимо получать значния после события изменения маштаба, но как так и не разобрался.

3 комментария
Подписаться на комментарии к посту
Большое спасибо! Как раз то, что было нужно!
Лучше слушать Update у карты. События SmoothZoomEnd будет генерироваться, только если включено плавное масштабирование карты.