在Google地图上点击添加标记
我惊奇地发现了一个非常简单的例子,当用户在地图上点击鼠标时,如何添加标记到Google地图。
过去的几个小时我已经四处寻找,并查阅了Google Maps API文档,希望能得到一些帮助!
经过更多的研究,我设法find了一个解决scheme。
google.maps.event.addListener(map, 'click', function(event) { placeMarker(event.latLng); }); function placeMarker(location) { var marker = new google.maps.Marker({ position: location, map: map }); }
这实际上是一个logging的function,可以在这里find
// This event listener calls addMarker() when the map is clicked. google.maps.event.addListener(map, 'click', function(e) { placeMarker(e.latLng, map); }); function placeMarker(position, map) { var marker = new google.maps.Marker({ position: position, map: map }); map.panTo(position); }
在2017年,解决scheme是:
map.addListener('click', function(e) { placeMarker(e.latLng, map); }); function placeMarker(position, map) { var marker = new google.maps.Marker({ position: position, map: map }); map.panTo(position); }
目前,将侦听器添加到地图的方法是
map.addListener('click', function(e) { placeMarker(e.latLng, map); });
并不是
google.maps.event.addListener(map, 'click', function(e) { placeMarker(e.latLng, map); });
参考
@Chaibi Alaa,您可以在第一次点击时设置标记,然后在随后的点击中改变位置。
var marker; google.maps.event.addListener(map, 'click', function(event) { placeMarker(event.latLng); }); function placeMarker(location) { if (marker == null) { marker = new google.maps.Marker({ position: location, map: map }); } else { marker.setPosition(location); } }
- 从HTMLElement获取google.maps.Map实例
- 在地址arrays中添加多个标记Google Map API v3,并在pageLoad上进行地理编码时避免OVER_QUERY_LIMIT
- Google地图API V3方法fitBounds()
- GMaps V3 InfoWindow – 禁用closures“x”button
- Google地图API 3:从右键单击获取坐标
- Google Maps API v3将InfoWindow添加到每个标记
- 如何限制谷歌地图API V3中的平移?
- Google Map API v3 – 设置边界和中心
- 如何访问Google Maps API v3标记的DIV及其像素位置?