Google maps 单击将标记添加到Google地图

Google maps 单击将标记添加到Google地图,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,令人惊讶的是,我很难找到一个非常简单的例子,说明当用户左键单击地图时如何在谷歌地图上添加标记 在过去的几个小时里,我四处查看了一下,查阅了谷歌地图API文档,非常感谢您的帮助 经过进一步研究,我终于找到了解决办法 google.maps.event.addListener(map, 'click', function(event) { placeMarker(event.latLng); }); function placeMarker(location) { var marke

令人惊讶的是,我很难找到一个非常简单的例子,说明当用户左键单击地图时如何在谷歌地图上添加标记


在过去的几个小时里,我四处查看了一下,查阅了谷歌地图API文档,非常感谢您的帮助

经过进一步研究,我终于找到了解决办法

google.maps.event.addListener(map, 'click', function(event) {
   placeMarker(event.latLng);
});

function placeMarker(location) {
    var marker = new google.maps.Marker({
        position: location, 
        map: map
    });
}

这实际上是一个文档化的特性,可以找到


当前,将侦听器添加到映射的方法是

map.addListener('click', function(e) {
    placeMarker(e.latLng, map);
});
而不是

google.maps.event.addListener(map, 'click', function(e) {
    placeMarker(e.latLng, map);
});

@Chaibi Alaa,使用户只能添加一次并移动标记;您可以在第一次单击时设置标记,然后仅在后续单击时更改位置

var标记;
google.maps.event.addListener(映射,'click',函数(事件){
地点标记(事件标记);
});
功能位置标记(位置){
如果(标记==null)
{
marker=新的google.maps.marker({
位置:位置,,
地图:地图
}); 
} 
其他的
{
标记器。设置位置(位置);
} 
}

2017年,解决方案是:

map.addListener('click',函数(e){
地点标记(如板条、地图);
});
功能位置标记(位置、地图){
var marker=new google.maps.marker({
职位:职位,,
地图:地图
});
潘托地图(位置);
}
  • 首先声明标记:
  • 调用该方法以在单击时绘制标记:
  • 定义功能:

  • 我们可以让用户只添加一次吗?并移动标记?请提供样本链接
    google.maps.event.addListener(map, 'click', function(e) {
        placeMarker(e.latLng, map);
    });
    
    this.marker = new google.maps.Marker({
       position: new google.maps.LatLng(12.924640523603115,77.61965398949724),
       map: map
    });
    
    this.placeMarker(coordinates, this.map);
    
    placeMarker(location, map) {
        var marker = new google.maps.Marker({
            position: location,
            map: map
        });
        this.markersArray.push(marker);
    }