2012-07-11 99 views
0

我正在谷歌地图上工作,我想要做的就是点击地图,它添加一个标记到地图它的工作正常,但问题是,我需要移动同样的标记到一个新的地方,如果我点击其他地方而不是新标记。而且当我上的任何一点单击它给我的那个地方的地址在文本字段更改标记的位置点击

这里是我的代码

<script type="text/javascript"> 
var map; 
var markersArray = []; 

function initialize() { 
    var haightAshbury = new google.maps.LatLng(37.7699298, -122.4469157); 
var mapOptions = { 
    zoom: 7, 
    center: haightAshbury, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 
    map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions); 

    google.maps.event.addListenerOnce(map, 'click', function(event) { 
    addMarker(event.latLng); 
    }); 
    } 

    function addMarker(location) { 

    marker = new google.maps.Marker({ 
    position: location, 
    map: map 
    }); 
    markersArray.push(marker); 
    } 

    // Removes the overlays from the map, but keeps them in the array 
    function clearOverlays() { 

    if (markersArray) { 
    for (i in markersArray) { 
     markersArray[i].setMap(null); 
     } 
    } 
    } 

    } 
+0

有什么可以回答我并帮助我 – 2012-07-11 12:01:09

+0

究竟是什么问题?老标记不走了? – mariosk89 2012-07-11 12:15:06

回答

0

你可以打电话随时提供clearOverlays创建隐藏新marker.this方式显示前一个标记并仅显示新的标记。 另一种方法是有一个var标记,就像你有一个var map一样。你可以在addMarker中编辑标记位置。 就地理编码而言,看看this