Клуб API Карт

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

при создании динамически и вешайте

Мы же на ты вроде?Я так и сделал.

        function add_point(point , color , content){

            var placemark = new ymaps.Placemark(point, {

                    iconContent : content,

                }, { preset: 'twirl'+color+'StretchyIcon' , draggable : true });

            myMap.geoObjects.add(placemark);

            

            placemark.coords = point[0]+','+point[1];

            return placemark;

        }

        myMap.events.add('click', function(e){

            options = { balloonCloseButton: true };

            coords = e.get('coordPosition');

            coords = [coords[0] , coords[1]]

 

            if(start_point == '') start_point = add_point(coords , '#blue' , 'От');

            else if(end_point == '') end_point = add_point(coords , '#red' , 'До');

                    start_point.events.add('DragEnd' , function(e){

                        alert('привет');

                    });

            console.log(start_point);

            //start_placemark = add_point(start_point , '#blue' , 'От');

            //end_placemark = add_point(end_point , '#red' , 'До');

        });

Не узнал с новой аватаркой =)

У геообъекта нет события "DragEnd"

В 2.0 имена событий пишутся lowercase-ом

Гран мерси.Ато я смотрю event ы все в нижнем регистре, а в документации так как я написал

где?

дай ссылку

почему событие срабатывает 2 раза?Как определять текущие координаты метки при драгэнд?

такого не должно быть

может ты вешаешь 2 обработчика?

Как получить текущие координаты по dragend в колбек функции?Спасибо за ответы очень здорово помогаешь

Вроде можно через event.get('target') получить тот плэйсмарк, который драгают.

placemark.events.add('dragend', function (e) {

    console.log(e.get('target').geometry.getCoordinates());

});

Ну либо через замыкание

placemark.events.add('dragend', function (e) {

    console.log(placemark.geometry.getCoordinates());

});

у меня вот так работает 

 

 myPlacemark = new ymaps.Placemark(centr, {

                }, {

                    iconImageHref: 'iametka.png', // картинка иконки

                    iconImageSize: [19, 23], // размеры картинки

                    iconImageOffset: [-9, -23], // смещение картинки

                    draggable:true

                });

                myPlacemark.events.add('dragend', onClick);

 

onClick - это функция которая выполнится после окончания перетаскивания.