Добавил на карту поиск по своим объектам по аналогии с примером в песочнице (http://api.yandex.ru/maps/jsbox/custom_search) с единственным отличием, что там на карту добавлена геоколлекция, а у меня кластеры. Слушаю событие resultselect (тоже кстати не верно, потому что оно происходит до перехода к метке который разумеется закроет только что открытый балун, а как правильно пока не знаю) и перебираю элементы кластера сравнивая их айдишники Если элемент отображён на данный момент на карте не кластером, а отдельной меткой, то проблем нет, в противном случае не работает. Вообщем в итоге всё доросло до кода ниже и всё равно не работает) Помогите люди добрые советом дельным или примером подходящим.
getState = function (point) {
return clusterer.getObjectState(point);
}
mySearchControl.events.add("resultselect", function (e) {
Index = e.get("resultIndex");
mySearchControl.getResult(Index).then(function (result) {
id = result.properties.get("id");
clusterer.each(function (item) {
var state = getState(item);
cluster = state.isClustered && state.cluster;
if (cluster) {
cluster.properties.get("geoObjects").each(function (item) {
if (item.properties.get('id') == id) {
cluster.state.set("activeObject", item);
cluster.balloon.open();
}
});
} else {
if (item.properties.get('id') == id) {
item.balloon.open();
}
}
});
});
});