Created
March 18, 2016 13:34
-
-
Save dannyvassallo/0686863c7bbb2f4e6927 to your computer and use it in GitHub Desktop.
Gelocation for Greg
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var lat, | |
lng; | |
$(document).ready(function(){ | |
getLocation(); | |
var mapOptions = { | |
center: new google.maps.LatLng(lat, lng), | |
zoom: 8, | |
mapTypeId: google.maps.MapTypeId.ROADMAP | |
}; | |
var geocoder = new google.maps.Geocoder; | |
var infoWindow = new google.maps.InfoWindow(); | |
var latlngbounds = new google.maps.LatLngBounds(); | |
var map = new google.maps.Map(document.getElementById("map"), mapOptions); | |
google.maps.event.addListener(map, 'click', function(e) { | |
//console.log(e.latLng); | |
//alert("Latitude: " + e.latLng.lat() + "\r\nLongitude: " + e.latLng.lng()); | |
latlongtoZip(e.latLng.lat(), e.latLng.lng()); | |
}); | |
}); | |
function latlongtoZip(lat, lng) { | |
var urlRequest = "http://api.geonames.org/findNearbyPostalCodesJSON?lat=" + lat + "&lng=" + lng + "&radius=.1&username=jagross66" | |
var retCode = ""; | |
$.ajax({ | |
url: urlRequest, | |
method: 'GET' | |
}).done(function(response) { | |
console.log(response); | |
var postalCodesArray = response.postalCodes; | |
console.log(response); | |
for (i = 0; i < postalCodesArray.length; i++) { | |
console.log(postalCodesArray[i].postalCode); | |
} | |
var zipCode = postalCodesArray[0].postalCode | |
alert("zipcode: " + zipCode); | |
return zipCode; | |
}); | |
} | |
function getLocation() { | |
var options = { | |
enableHighAccuracy: true, | |
timeout: 5000, | |
maximumAge: 0 | |
}; | |
function success(pos) { | |
var crd = pos.coords; | |
lat = crd.latitude; | |
lng = crd.longitude | |
console.log(lat, lng); | |
}; | |
function error(err) { | |
console.warn('ERROR(' + err.code + '): ' + err.message); | |
}; | |
navigator.geolocation.getCurrentPosition(success, error, options); | |
} |
Here is a fiddle grabbing lat and lng outside of the getlocation() scope: https://jsfiddle.net/danielvassallo87/8Latzrgm/1/
load maps async: https://jsfiddle.net/danielvassallo87/8Latzrgm/3/
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Discussion on stack about window.onload vs. jquery's $(document).ready();