Клуб API Карт

Конфликт кода с модулем Пробок

e.grekov
1 ноября 2010, 02:48

Привет! Я начинающий пользователь API.

Установил на свою карту модуль пробок.

Потом захотел поставить код из этого примера http://api.yandex.ru/maps/articles/examples/mapcontrolscustomizing.html, но вместо карты получается белая страница. Если убрать модуль пробок - всё работает. Как совместить их? 

 

И чтоб два раза не ходить - как модифицировать код с картой офисов, чтобы на карте не были видны их метки/баллуны? Хочу сделать таким образом навигацию по городам.

 

Спасибо!

4 комментария
Подписаться на комментарии к посту
Дайте ссылку на страницу, на котрой за место карты белая страница.

По поводу второго вопроса - взгляните на другой пример:
http://api.yandex.ru/maps/articles/examples/mappanto.html
Вот ссылка http://rusgto.ru/1.php

Там я вставил код из приведённого выше примера кода (Кстати, как с его помощью вывести названия городов прямо на карте, а не за её границами?) и он тоже конфликтует с пробками.
404

Белая страница всместо карты, часто вызвана ошибами в джаваскрипте. Гляньте в консоль ошибок.
У вас не хватает создания контрола пробок, т.е.:

traffic = new YMaps.Traffic.Control();

Кроме того код добавления на карту нужно выполнять после создания самой карты (это вообще довольно лоично :)), т.е. строчки:

// Код пробок 
map.addControl(traffic);
traffic.setOptions({ showInfoSwitcher: true });
traffic.setState({ infoLayerShown: true })

должны идти после строчки:

var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);

Итого, код добавления пробок:

var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
traffic = new YMaps.Traffic.Control();
map.addControl(traffic);
traffic.setOptions({ showInfoSwitcher: true });
traffic.setState({ infoLayerShown: true })


Если останутся вопросы, рекомендую ознакомится с примерами на странице документации пробок  - http://api.yandex.ru/maps/jsapi/doc/mod/concepts/traffic.xml