繁体   English   中英

在谷歌地图上设置标记

[英]Setting marker on google map

我正在尝试在Google地图上设置标记。 我想我是这样做的,就像谷歌要我一样,但是标记没有显示在地图上。 我究竟做错了什么? 您可以在此处查看已实施的地图: http//nidarosnaprapati.no/wordpress/?page_id = 66

<script type="text/javascript">
function initialize() {
var latlng = new google.maps.LatLng(63.4242234, 10.4439311);
var myOptions = {
  zoom: 13,
  center: latlng,
  mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
map.addOverlay(new GMarker(63.4242234, 10.4439311));
}
</script>

问题是你将谷歌地图v2代码与谷歌地图v3混合。 addOverlay函数和GMarker来自gogle maps v2。 用google maps v3代码替换它们:

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

每个版本的实现方式不同。 一个在全局命名空间上使用G~,另一个在google.maps。〜命名空间下。

我不完全喜欢新版本,因为一些对象可以使用JSON构建,而其他对象则不能。 例如。 LatLng和Marker。

如果您不想使用标准的Google标记,则添加标记的其他标记显示也会有所不同。

var marker = new google.maps.Marker({
    position: latlng,
    map: map,
    icon: new google.maps.MarkerImage(
        "maps/images/point.png", // reference from your base
        new google.maps.Size(36, 36), // size of image to capture
        new google.maps.Point(0, 0), // start reference point on image (upper left)
        new google.maps.Point(10, 10), // point on image to center on latlng (scaled)
        new google.maps.Size(20, 20) // actual size on map
    )
});

要销毁标记,只需设置:

marker.setMap(null);
delete marker;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM