我正在努力做到这一点,当卡车司机在一天开始时按下按钮时,我可以看到他在那一刻的位置,所以我知道我的司机从哪里出发。
当有人允许访问他们的位置时,我正在尝试获取它,您可以从中获取直接地址作为变量。它只需要是城市和国家。
像这样:Nottingham, NG1 1AJ, UK 这里以链接为例:https://www.mapdevelopers.com/what-is-my-address.php
i 只能在地图上显示位置的地方找到反向地理编码。 下面的代码使用反向地理编码但在地图上获取地址。 我正在尝试将其作为变量输出显示在应用程序中。 感谢您的帮助!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Geolocation</title>
</head>
<body>
<a href="#" id="get_location"><button>Get location</button></a>
<div id="map">
<iframe
id="google_map"
width="1000"
height="700"
frameborder="0"
scrolling="no"
marginheight="0"
marginwidth="0"
src="https://maps.google.com?output=embed"
></iframe>
</div>
<script>
var x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
} else {
x.innerHTML = "Locatie niet supported door jouw browser.";
}
}
function showPosition(position) {
x.innerHTML =
"Latitude: " +
position.coords.latitude +
"<br>Longitude: " +
position.coords.longitude;
}
var c = function (pos) {
var lat = pos.coords.latitude;
long = pos.coords.longitude;
coords = lat + ", " + long;
document
.getElementById("google_map")
.setAttribute(
"src",
"https://maps.google.com/?q=" + coords + "0&z=60&output=embed"
);
};
document.getElementById("get_location").onclick = function () {
navigator.geolocation.getCurrentPosition(c);
return false;
};
</script>
</body>
</html>
我找到了答案,见下面的代码。
//仅适用于谷歌地图 API 密钥
<script src="http://j.maxmind.com/app/geoip.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?key=XXXXYOUR_API_KEYXXXX&callback=initMap&v=weekly&channel=2"></script>
<script type="text/javascript" >
window.onload=getGeo;
function getGeo(){
if (navigator && navigator.geolocation) {
navigator.geolocation.getCurrentPosition(geoOK, geoKO);
} else {
geoMaxmind();
}
}
function geoOK(position) {
showLatLong(position.coords.latitude, position.coords.longitude);
}
function geoMaxmind() {
showLatLong(geoip_latitude(), geoip_longitude());
}
function geoKO(err) {
if (err.code == 1) {
error('De gebruiker heeft toestemming geweigerd om locatie-informatie te verkrijgen.');
} else if (err.code == 2) {
error('Uw locatie kan niet worden bepaald.');
} else if (err.code == 3) {
error('TimeOut.')
} else {
error('We weten niet wat er is gebeurd, maar er is een fout opgetreden.');
}
}
function showLatLong(lat, longi) {
var geocoder = new google.maps.Geocoder();
var yourLocation = new google.maps.LatLng(lat, longi);
geocoder.geocode({ 'latLng': yourLocation },processGeocoder);
}
function processGeocoder(results, status){
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
document.forms[0].dir.value=results[0].formatted_address;
document.getElementById("")
} else {
error('Google heeft geen resultaten opgeleverd.');
}
} else {
error("Geocodering mislukt vanwege: " + status);
}
}
function error(msg) {
alert(msg);
}
</script>
<form align="left">
<input type="text" name="dir" />
</form>
你如何将这个值存储到你的数据库中以供参考?