Как стать автором
Обновить

Комментарии 20

Напишите хотя бы кусок кода который предположительно не работает, а то получается как настройка домен контроллера по телефону.
Ну, вообще, я хотел просто найти человека, который имел опыт работы с directions и пообщаться уже «с глазу на глаз».

Ну а код без лишних частей примерно такой:
var map = new GMap2(document.getElementById(«map_canvas»));
var directions;

directions = new GDirections(map);
directions.load(«from: Россия Санкт-Петербург 1-я Красноармейская ул. 15 to: Россия Санкт-Петербург Невский поспект 86», {«locale»: «ru»});

после directions.load()
проверьте статус, directions.getStatus().code
code.google.com/apis/maps/documentation/reference.html#GDirections

если статус 602 — адрес не найден, 604 — невозможно найти путь между двумя указанными точками.
все статус коды описаны в GGeoStatusCode
code.google.com/apis/maps/documentation/reference.html#GGeoStatusCode

а дальше после того как вы получили заветный код 200
можно работать с полученными данными
надо скорее всего отцентровать карту по найденым данным:
map.setCenter(getBounds().getCenter());

а потом например добавить на карту полученный путь:
map.addOverlay(directions.getPolyline());
directions.getStatus() undefined… и непонятно почему… вроде в directions.load все без ошибок
directions.load(«from: Россия Санкт-Петербург ул. 1-я Красноармейская 15 to: Россия Санкт-Петербург Невский поспект 86», {«locale»: «ru»});
alert(directions.getStatus()); -> [object Object]
alert(directions.getStatus().code); -> 602
у меня всё нормально
Хм… а в чем еще может быть дело… undefined и все тут. Это случаем не относится к коммерческому использованию? Может не на всех сайтах можно вешать?
вешать можно на любых сайтах (про коммерчиское использование не знаю)
главное правильный код для этого домена на сайте гугла взять.
Для отлова ошибок лучше всё же использовать
GEvent.addListener(directions, «error», function() {
alert(«error: » + directions.getStatus().code);
});
да, только что проверил с правильным адресом он сразу рисует, забыл видимо =)

directions.load(«from: Moscow, Znamenka to: Moscow, Vozdvizhenka»);
рисует сразу.
C этим кодом тоже undefined =(
Причем все остальное работает отлично, и Геокодер и оверлеи и маркеры…
Тогда не знаю, попробуйте в Firefox открыть страницу и посмотреть Error Console.
Возможно где-то в районе directions.load синтаксическая ошибка прерывающая код.
У меня firebug. Все чисто. Просто directions.load не работает. Для проверки пробовал копипастить с гугла их пример. Тоже не работает.
попробуй в окне браузера
javascript:directions.load(«from: Moscow, Znamenka to: Moscow, Vozdvizhenka»);
и проследи в firebug -> net запрашивается ли с сервера чтолибо.
ничего не запрашивается в консоли пишет direction is undefined
у тебя же в коде написано:
глюк хабра

var directions;

directions = new GDirections(map);

значит оно не может быть undefined.
у тебя где-то явно синтакическая ошибка, букву пропустил в имени или ещё где.
p.s. на всякий слуай проверь Error Console.
пусто… ни одной ошибочки ( весь день голову ломаю…
Переписал все заново. Тот же результат =(
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории