2013-05-29 74 views
1

我想添加一个标记到我的自定义谷歌地图API v3。地图显示正常,但我似乎无法添加标记。这似乎是一件基本的事情,但我一直陷入困境。我试过按照https://developers.google.com/maps/documentation/javascript/overlays#AddingOverlays将基本标记添加到谷歌地图api v3

的说明。但是,我对JavaScript和API的知识总的来说是相当有限的,所以我觉得在这里必须缺少一些基本的东西。 Google说明基本上可能不包含它。缺少冒号,括号。也许变量的顺序是错误的?任何输入非常感谢!这里的代码如下:

<script type="text/javascript"> 
function initialize() { 

    var myLatlng = new google.maps.LatLng(51.60505, -0.18989); 

    var mapOptions = { 
     center: myLatlng, 
     zoom: 18, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 

    var map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions); 

    //the code for the marker, as copy pasted from google 
    var marker = new google.maps.Marker({ 
     position: myLatlng, 
     title:"Hello World!" 
    }); 

    var styles = [ 
     {featureType: "landscape", 
     stylers: [ 
      { color: "#378fb5" } 
     ] 
     },{ 
     ETC 
     ETC 
     ETC 
     } 
    ]; 

    map.setOptions({styles: styles}); 
} 
google.maps.event.addDomListener(window, 'load', initialize); 
</script> 

回答

2

你必须精确您要使用的地图像这样的标记:

var marker = new google.maps.Marker({ 
    map: map, 
    position: myLatlng, 
    title:"Hello World!" 
}); 

有一个美好的一天!

+0

我的日子很好地改进了!谢谢Alexis! – bestfriendsforever

2

你需要调用

marker.setMap(map) 

你已经创造了它之后,即

<script type="text/javascript"> 
function initialize() { 

var myLatlng = new google.maps.LatLng(51.60505, -0.18989); 

var mapOptions = { 
    center: myLatlng, 
    zoom: 18, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 

var map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions); 

//the code for the marker, as copy pasted from google 
var marker = new google.maps.Marker({ 
    position: myLatlng, 
    title:"Hello World!" 
}); 

// Add the marker to the map 
marker.setMap(map); 

var styles = [ 
    {featureType: "landscape", 
    stylers: [ 
     { color: "#378fb5" } 
    ] 
    },{ 
    ETC 
    ETC 
    ETC 
    } 
]; 

map.setOptions({styles: styles}); 
} 
google.maps.event.addDomListener(window, 'load', initialize); 
</script> 
+0

这也很完美。谢谢戴夫。 – bestfriendsforever

0

如果要将标记拖放到所需的位置,请设置draggable = true。 (map:map, draggable:true });