我尝试了很多变化但没有在地图上显示标记。有人可以帮忙吗?
</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>
万分感谢。
答案 0 :(得分:1)
标记未显示的原因有两个:
map
变量在initialize
函数中是本地变量,因此您无法通过函数外部的代码访问它。
从加载事件调用initialize
函数,因此您尝试在标记存在之前将标记添加到地图中。
将标记添加到initialize
函数内的地图中。您可以访问变量,并在添加标记时创建地图。
如果您需要访问initialize
函数之外的地图,请在函数外部声明变量map
。