How do I search using the Google Maps API?
I'm trying to figure out how to search for nearby businesses in an iPhone app using the Google Maps API. I'm completely new to Javascript, and have waded through some of Google's sample code easily enough.
I found how to grab the user's current location. Now I want to search for "restaurants" near that location. I'm just building on the sample code from here. I'll post it below with my changes anyway, just in case.
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>Google Maps JavaScript API v3 Example: Map Geolocation</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<script type="text/javascript" src="http://code.google.com/apis/gears/gears_init.js"></script>
<script type="text/javascript">
var开发者_如何学编程 currentLocation;
var detroit = new google.maps.LatLng(42.328784, -83.040877);
var browserSupportFlag = new Boolean();
var map;
var infowindow = new google.maps.InfoWindow();
function initialize()
{
var myOptions =
{
zoom: 6,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
map.enableGoogleBar();
// Try W3C Geolocation method (Preferred)
if(navigator.geolocation)
{
browserSupportFlag = true;
navigator.geolocation.getCurrentPosition(function(position)
{
// TRP - Save current location in a variable (currentLocation)
currentLocation = new google.maps.LatLng(position.coords.latitude,position.coords.longitude);
// TRP - Center the map around current location
map.setCenter(currentLocation);
},
function()
{
handleNoGeolocation(browserSupportFlag);
});
}
else
{
// Browser doesn't support Geolocation
browserSupportFlag = false;
handleNoGeolocation(browserSupportFlag);
}
}
function handleNoGeolocation(errorFlag)
{
if (errorFlag == true)
{
// TRP - Default location is Detroit, MI
currentLocation = detroit;
contentString = "Error: The Geolocation service failed.";
}
else
{
// TRP - This should never run. It's embedded in a UIWebView, running on iPhone
contentString = "Error: Your browser doesn't support geolocation.";
}
// TRP - Set the map to the default location and display the error message
map.setCenter(currentLocation);
infowindow.setContent(contentString);
infowindow.setPosition(currentLocation);
infowindow.open(map);
}
</script>
</head>
<body style="margin:0px; padding:0px;" onload="initialize()">
<div id="map_canvas" style="width:100%; height:100%"></div>
</body>
</html>
Check out GLocalSearch object: http://code.google.com/apis/ajaxsearch/documentation/reference.html#_class_GlocalSearch
Is that what you are looking for?
精彩评论