Google地图提供了JavaScript API,开发者可以通过编程方式从共享当前位置的Google地图URL中获取坐标。以下是一种实现方式:
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=places"></script>
需要注意的是,你需要将YOUR_API_KEY替换为你自己的Google Maps API密钥。如果还没有API密钥,可以在Google Cloud控制台创建一个。
function getCoordinatesFromUrl(url) {
// 创建一个地图实例
var map = new google.maps.Map(document.getElementById("map"), {
center: { lat: -34.397, lng: 150.644 }, // 设置地图初始中心
zoom: 8 // 设置地图初始缩放级别
});
// 从URL中提取坐标
var coordinates;
var regex = /@([-0-9.]+),([-0-9.]+)/; // 使用正则表达式匹配坐标
var match = regex.exec(url);
if (match) {
var lat = parseFloat(match[1]);
var lng = parseFloat(match[2]);
coordinates = { lat: lat, lng: lng };
}
// 在地图上显示标记
if (coordinates) {
var marker = new google.maps.Marker({
position: coordinates,
map: map
});
// 将地图中心移动到标记的位置
map.setCenter(coordinates);
}
}
以上代码将创建一个地图实例,并从共享位置的URL中提取坐标。然后,它会在地图上显示一个标记,并将地图中心移动到该标记位置。你可以将函数getCoordinatesFromUrl(url)与你的页面交互逻辑绑定,以便在需要时调用该函数。
值得注意的是,这种方式只适用于共享当前位置的Google地图URL,并且需要使用Google Maps JavaScript API。如果使用其他方式或API,可能需要使用不同的解析方法。
领取专属 10元无门槛券
手把手带您无忧上云