Is it possible to do so using JavaScript and/or HTML code without prompting the user?
I wish to print their location(city or country) in text format.
Is it possible to do so using JavaScript and/or HTML code without prompting the user?
I wish to print their location(city or country) in text format.
Check out this link: https://www.w3schools.com/Html/html5_geolocation.asp
Using GEOLocation, HTML5 can get your current location.
The code below will not work because:
To use this code on your website, get a free API key from Google. Read more at: https://www.w3schools.com/graphics/google_maps_basic.asp
Once you get an API Key, this code will work on your website. If you would like to see a working version, go here: https://www.w3schools.com/Html/tryit.asp?filename=tryhtml5_geolocation_map
The code basically gets your Lattitude and Longitude and plots it in the google maps.
var x = document.getElementById("demo");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition, showError);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function showPosition(position) {
var latlon = position.coords.latitude + "," + position.coords.longitude;
var img_url = "https://maps.googleapis.com/maps/api/staticmap?center="
+latlon+"&zoom=14&size=400x300&key=AIzaSyBu-916DdpKAjTmJNIgngS6HL_kDIKU0aU";
document.getElementById("mapholder").innerHTML = "<img src='"+img_url+"'>";
}
//To use this code on your website, get a free API key from Google.
//Read more at: https://www.w3schools.com/graphics/google_maps_basic.asp
function showError(error) {
switch(error.code) {
case error.PERMISSION_DENIED:
x.innerHTML = "User denied the request for Geolocation."
break;
case error.POSITION_UNAVAILABLE:
x.innerHTML = "Location information is unavailable."
break;
case error.TIMEOUT:
x.innerHTML = "The request to get user location timed out."
break;
case error.UNKNOWN_ERROR:
x.innerHTML = "An unknown error occurred."
break;
}
}
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to get your position.</p>
<button onclick="getLocation()">Try It</button>
<div id="mapholder"></div>
</body>
</html>
One more thing, if you want the country and city check out the first answer here: How to get client's IP address using JavaScript?. That should help you out.
Hope this helped!