А как-то можно остановить событие от продвижения по слоям объектов? Вот в примере я создаю метку. Внутри ее балуна кнопка, удаляющая метку. При нажатии на эту кнопку метка удаляется, а потом я внезапно получаю событие клика по карте.
Это само по себе не очень логично, поскольку я не кликал по карте. Но этого можно было бы избежать методом типа preventDefault(). Однако, и его я не вижу. Что делать?
window.onload = function () {
map = new YMaps.Map(YMaps.jQuery("#map_canvas")[0]);
map.setCenter(new YMaps.GeoPoint.fromString('37.486636,55.737319'), 12);
// При клике по карте получаем алерт
YMaps.Events.observe(map, map.Events.Click, function() { alert('click!'); });
// Создаем метку с кнопкой удаления внутри
Mark = new YMaps.Placemark(new YMaps.GeoPoint.fromString('37.486636,55.737319'));
Mark.setBalloonContent('<input onclick="remove_mark();" type="button" value="Удалить">');
map.addOverlay(Mark);
}
function remove_mark() {
map.removeOverlay(Mark);
}