如何在Google地图上只显示1个标记?
问题描述:
嗨我有这个奇怪的问题与谷歌地图V3 API。在谷歌地图上显示多个标记是好的,但是当我只想在地图上显示一个标记时,我没有显示标记?如何在Google地图上只显示1个标记?
下面的代码只显示没有标记的地图。
var map = new google.maps.Map(document.getElementById('map_canvas'), options);
marker1 = new google.maps.Marker({
position: new google.maps.LatLng(1.288693,103.846733),
map: map
});
添加第二个标记在地图上显示2个标记。
var map = new google.maps.Map(document.getElementById('map_canvas'), options);
marker1 = new google.maps.Marker({
position: new google.maps.LatLng(1.288693,103.846733),
map: map
});
marker2 = new google.maps.Marker({
position: new google.maps.LatLng(1.288693,103.846733),
map: map
});
所以我的问题是,我如何只在地图上显示一个标记?目前我的解决方法是有相同的纬度/经度的2个标记,但它不是非常优雅的大声笑
答
您的第一个代码块完全适合我。这里是整个文件我已经在那里的工作,如果这能帮助:
<html>
<head>
<title>Map Test</title>
<script type="application/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script>
var latlng = new google.maps.LatLng(1.288693,103.846733);
var options = {
zoom: 16,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
};
</script>
</head>
<body>
<h1>Map</h1>
<div id="map_canvas" style="height:100%; width:100%;"></div>
<script>
var map = new google.maps.Map(document.getElementById('map_canvas'), options);
marker1 = new google.maps.Marker({
position: new google.maps.LatLng(1.288693,103.846733),
map: map
});
</script>
</body>
</html>
答
显示在V3谷歌地图一个标志我没有地雷这样
function initialize() {
var latlng = new google.maps.LatLng(-34.397, 150.644);
var myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP // map view, can be set to satellite, street, roadview, aerialview
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var marker = new google.maps.Marker({
position: latlng,
map: map,
animation: google.maps.Animation.DROP,
title: "Uluru (Ayers Rock)"
});
marker.setMap(map);
}
看起来是正确的。尝试用“var”声明你的标记。我的猜测是你在另一个函数中覆盖了marker1。 – mhyfritz 2011-06-03 22:40:41
适合我的工作:http://jsfiddle.net/doktormolle/wKMwR/ – 2011-06-03 22:41:31
我覆盖它。谢谢! – Nyxynyx 2011-06-04 01:08:00