Клуб API Карт

Не срабатывает обработчик Events.DragEnd

pkuptsov
16 декабря 2011, 14:28

Здравствуйте,

Почему-то не срабатывает обработчик Events.DragEnd на метки загруженные из xml файла.

При этом на метки созданные так: 

 

var placemark = new YMaps.Placemark(map.getCenter(), {draggable: true}
map.addOverlay(placemark);

YMaps.Events.observe(placemark, placemark.Events.DragEnd, function (obj) {
obj.update(
// новые координаты записываем в соответствующее поле формы
alert(1);
}

  

 

Все ок, а вот так:

 

// Создание и добавление YMapsML-документа на карту
  var ml = new YMaps.YMapsML('http://site/simpleobject.xml'
map.addOverlay(ml); 

// добавляем опции перетаскивания меток
YMaps.Events.observe(ml, ml.Events.Load, function (ml) {
ml.get(0).forEach(function (obj) {
obj.setOptions({
draggable : true
}
}
}

 

YMaps.Events.observe(ml, ml.Events.DragEnd, function (obj) {
obj.update(
    alert(1);
} 

 

Не работает.  

Ткните носом в ошибку?

Спасбио! 

2 комментария
Подписаться на комментарии к посту
Потому что во втором примере вы устанавливаете обработчик DragEnd на объект YMaps.YMapsML а не на метки.

Надо делать установку внутри forEach на получаемый  а цикле obj

Спасибо огромное!