A co-worker @scriptist found a super awesome way to get a users location via json. All the fancy location stuff is done on a server with IP addresses.
This simple json api let’s you grab a users geolocation details. Easy as pie.
Edit: I would use the HTML5 Geolocation API as your first option. As IP geolocation can have poor accuracy. If you must use IP based Geolocation look at the Google Maps Business Geolocation API. (paid service)