gpt4 book ai didi

javascript - 通过在 Google map 上拖放标记来获取用户地址

转载 作者:行者123 更新时间:2023-12-03 01:15:02 24 4
gpt4 key购买 nike

我的网站上有一张 map ,我必须通过将标记拖放到 map 上的任何位置来获取用户地址。我已成功在我的网站上显示 map 。但我不知道如何在 map 上显示可以拖动的标记并通过该标记获取用户地址。我有下面的 map 代码,它通过单击 map 来获取用户地址。谢谢。

<div id='map-canvas'></div>

var myLatlng = new google.maps.LatLng(latitude,longitude);
var myOptions = {
zoom: 10,
center: myLatlng
}

var map = new google.maps.Map(document.getElementById("map-canvas"), myOptions);
var geocoder = new google.maps.Geocoder();

google.maps.event.addListener(map, 'click', function(event) {
geocoder.geocode({
'latLng': event.latLng
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
alert(results[0].formatted_address);
}
}
});
});

最佳答案

您应该在拖动端添加一个标记和一个监听器

在此示例中,监听器显示拖动结束纬度、经度并执行地理编码

<div id='map-canvas'></div>

var myLatlng = new google.maps.LatLng(latitude,longitude);
var myOptions = {
zoom: 10,
center: myLatlng
}

var map = new google.maps.Map(document.getElementById("map-canvas"), myOptions);
var geocoder = new google.maps.Geocoder();

var marker = new google.maps.Marker({
position: myLatlng,
map: map,
draggable:true,
title:"Drag me!"
});

marker.addListener('dragend', function(event) {
alert(event.latLng.lat() + ' ' + event.latLng.lng());
geocoder.geocode({
'latLng': event.latLng
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
alert(results[0].formatted_address);
}
}
});
});


google.maps.event.addListener(map, 'click', function(event) {
geocoder.geocode({
'latLng': event.latLng
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
alert(results[0].formatted_address);
}
}
});
});

关于javascript - 通过在 Google map 上拖放标记来获取用户地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52055659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com