Клуб API Карт

Дождаться загрузки геообъектов

iormark
24 февраля 2014, 13:46

Добрый день, подскажите пожалуйста.

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

некоторым полигонам задается свойство strokeWidth = 3

 

map = new ymaps.Map("ymap", {});

$.each(each, function(i, v) {

    map.geoObjects.add(polygon);

    map.geoObjects.add(placemark);

});


Затем я делаю geoQuery но ни чего не срабатывает. Сработает только если задержать вызов через setTimeout


var query = ymaps.geoQuery(map.geoObjects).

                    search('options.strokeWidth = 3');

 

query.each(function(pm) {

   alert(pm.properties.get('value'));

});

5 комментариев

В какой момент полигонам задается strokeWidth и какую версию апи вы используете?

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

API http://api-maps.yandex.ru/2.0-stable/?load=package.full&lang=ru-RU

 

Сразу же после того как создал карту, создаю полигоны и присваиваю strokeWidth.

 Пока все равно непонятно. Нужен код, а лучше ссылка на страницу.

Разобрался,  из моего примера действительно ни чего не понятно)

Если последовательно делать вызов все работает, но я не учел что полигоны берутся из базы, поэтому необходимо дождаться ответа сервера и поместить 

var query = ymaps.geoQuery(map.geoObjects).

                    search('options.strokeWidth = 3');


в тело $.ajax();

Добрый день.

Столкнулся с подобной проблемой. Не знаю как решить, т.к. новичок в WEB программировании. Покажите, пожалуйста, как решили проблему. Можно в личку.