无法在Google地图上添加标记Api

时间:2013-11-24 23:03:20

标签: javascript google-maps google-maps-api-3

我尝试了很多变化但没有在地图上显示标记。有人可以帮忙吗?

</script>
  <script>
  function initialize() {
      var latlng = new google.maps.LatLng(51.51697, -0.14650);
      var myOptions = {
          zoom: 16,
          center: latlng,
          mapTypeId: google.maps.MapTypeId.ROADMAP
      };
      var map = new google.maps.Map(document.getElementById("map_canvas"),
      myOptions);
  }

  // To add the marker to the map, use the 'map' property
    var marker = new google.maps.Marker({
    position: new google.maps.LatLng(51.51697, -0.14650),
    map: map,
    title:"HERE"
});

// To add the marker to the map, call setMap();
marker.setMap(map);
  </script>

万分感谢。

1 个答案:

答案 0 :(得分:1)

标记未显示的原因有两个:

  1. map变量在initialize函数中是本地变量,因此您无法通过函数外部的代码访问它。

  2. 从加载事件调用initialize函数,因此您尝试在标记存在之前将标记添加到地图中。

  3. 将标记添加到initialize函数内的地图中。您可以访问变量,并在添加标记时创建地图。

    如果您需要访问initialize函数之外的地图,请在函数外部声明变量map