【发布时间】:2017-04-30 19:43:55
【问题描述】:
我尝试开车上路,但我遇到了 OVER_QUERY_LIMIT 的问题。我在其他主题中看到了类似的问题,但它仍然没有解决我的问题。下面我介绍代码,我将非常感谢提示。谢谢
function initMap(startLat, startLng, endLat, endLng) {
var directionsService = new google.maps.DirectionsService;
var directionsDisplay = new google.maps.DirectionsRenderer;
var start = new google.maps.LatLng(startLat, startLng);
var end = new google.maps.LatLng(endLat, endLng);
calculateAndDisplayRoute(start, end, directionsService, directionsDisplay);
}
var i;
var j;
var delay;
function calculateAndDisplayRoute(start, end, directionsService, directionsDisplay) {
directionsService.route({
origin: start,
destination: end,
travelMode: google.maps.TravelMode.DRIVING
}, function(response, status) {
if (status === google.maps.DirectionsStatus.OK) {
var totaldistance = 0;
var route = response.routes[0];
// display total distance information.
for (var i = 0; i < route.legs.length; i++) {
totaldistance = totaldistance + route.legs[i].distance.value;
}
document.getElementById('distance').innerHTML += "<p>total distance is " + (totaldistance / 1000).toFixed(2) + " km</p>";
directionsDisplay.setDirections(response);
} else {
if (status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT)
j -= 2;
else
alert("Geocode was not successful for the following reason: " + status);
}
})
;
}
google.maps.event.addDomListener(window, "load", initMap);
function addMarker(lat,lon,optionMarker)
{
optionMarker.position = new google.maps.LatLng(lat,lon);
var marker = new google.maps.Marker(optionMarker);
}
function mapStart()
{
var optionMap =
{
center: new google.maps.LatLng(50.27191 ,18.86805),
zoom: 10,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map"), optionMap);
for(i=0; i < points.length; i += 2)
{
addMarker(points[i],points[i+1],{});
for(j = i+2; j < points.length; j += 2 ) {
initMap(points[i], points[i + 1], points[j], points[j + 1]);
}
}
}
【问题讨论】:
标签: javascript api google-maps google-api