谷歌地图上的两个标记为一个地方

时间:2013-04-11 12:30:32

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

我有带标记的简单谷歌地图。 当我为越南创建标记时,我在地图上看到两个标记(在开头和结尾,见截图)。

有没有办法只显示一个标记?我无法改变地图的大小或缩放。

代码:

function loadMap() {
 var mapOptions = {
   zoom: 1,
   disableDefaultUI: true,
   zoomControl: false,
   scrollwheel: false,
   center: new google.maps.LatLng(10.0, -97.2070),
   mapTypeId: google.maps.MapTypeId.ROADMAP
 }
 MAP = new google.maps.Map(document.getElementById("map"), mapOptions);
}

function addMarker(address) {
 geocoder = new google.maps.Geocoder();
 geocoder.geocode( { 'address': address}, function(results, status) {
 if (status == google.maps.GeocoderStatus.OK) {
  var marker = new google.maps.Marker({
    map: MAP,
    position: results[0].geometry.location
  });
  MARKERS.push(marker);
 }});
}

Screenshot of two markers

3 个答案:

答案 0 :(得分:2)

简短的回答是:No,您基本上会在同一位置看到相同的图标。因为你缩小了地图的方式,你看到同一块土地两次。这是正常的行为。没有逻辑,在一轮中会有一个标记,在第二轮则没有。

答案 1 :(得分:0)

您可以将最小缩放设置为较大的数字,这样您就无法缩小那么远。但是这有一些问题,你的地图必须有一个固定的宽度。

查看minZoom https://developers.google.com/maps/documentation/javascript/reference#MapOptions

否则我不知道你怎么能这样做。

答案 2 :(得分:0)

我的问题解决了,我需要为标记添加选项“optimized:false”。在此之后,我在一个地方有一个标记。Map with one marker for a one place