/
geolocation.html
66 lines (60 loc) · 1.96 KB
/
geolocation.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<html>
<head>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=true"></script>
<script type="text/javascript" src="http://zeptojs.com/zepto.min.js"></script>
<script>
var map;
var myresults;
function initialize() {
// Try HTML5 geolocation
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
var pos = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
gg(pos);
},
function() {
handleNoGeolocation(true);
});
} else {
handleNoGeolocation(false);
}
}
function handleNoGeolocation(errorFlag) {
if (errorFlag) {
var content = 'Error: The Geolocation service failed.';
} else {
var content = 'Error: Your browser doesn\'t support geolocation.';
}
}
function gg(latlng) {
var city = "Nao achei";
var geocoder = new google.maps.Geocoder();
geocoder.geocode({'latLng': latlng}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[1]) {
for(var i=0;i<results.length;i++) {
var addr =results[i].address_components;
for(var j=0;j<addr.length;j++) {
var comp = addr[j];
for(var x=0;x<comp.types.length;x++) {
if(comp.types[x] === 'locality') {
city = "Your city is " + comp.long_name;
}
}
}
}
}
}
else {
alert("Geocoder failed due to: " + status);
}
$('h1').text(city);
});
}
// google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body onload="initialize()">
<h1></h1>
</body>
</html>