2012-05-01 3 views
2

Я только что создал сайт с настройками плитки: http://shuttle.wanglingjie.net/memoire/memoire.html.Google Maps API v3 не может создать маркер ...

Но у меня есть проблема с созданием маркера на нем. После того, как я добавил новый код маркера:

  var marker = new google.maps.Marker(
      { 
      position: new google.maps.LatLng(0, 0), 
      map: map 
      } 
     ); 

Производитель не появляется и JS выдает сообщение об ошибке со следующим сообщением:

Uncaught Ошибка: Недопустимое значение для объекта: [объект HTMLDivElement]

Любые идеи? Спасибо за Ваше внимание. :)

ответ

2

map - null. В поджигатель, ваш сайт дает эту ошибку:

map is not defined 
http://shuttle.wanglingjie.net/memoire/memoire.html 
Line 129 

Ваш код Javascript плохо продуман, так что трудно понять, что вы сделали неправильно. Я думаю, проблема в том, что ваша функция window.onload не имеет закрывающей скобки: }.

Вы должны разместить свой javascript так, чтобы весь код, содержащийся в скобках, имел такое же количество отступа. Например, код, который вы выложили должен выглядеть следующим образом:

var marker = new google.maps.Marker(
    { 
     position: new google.maps.LatLng(0, 0), 
     map: map 
    } 
); 

Это также приемлемо, чтобы написать это так:

var marker = new google.maps.Marker({ 
    position: new google.maps.LatLng(0, 0), 
    map: map 
}); 

Это делает код более удобным для чтения, и поможет вам найти ошибки ,

Если вам нужна дополнительная помощь, пожалуйста, отредактируйте свой вопрос, чтобы включить полный текст вашей функции, правильно отформатированный.

0

Из исходного кода, приведенного в ссылке, я заметил, что блок, который создает маркер, находится за пределами функции, которая создает карту. Поэтому маркер не видит переменную map.

Смежные вопросы