Me gustaría agregar un retraso de 1-2 segundos en cada iteración del siguiente ciclo.cómo desacelerar un bucle de javascript
<html>
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<input id="start" type="submit"> </input>
<div id='status'></div>
<script>
var geocoder=new google.maps.Geocoder();
var glGeocodeCount = 0 ;
$(document).ready(function() {
$('#start').click(function() {
//srPerformGeocode("TD Tower, 55 King Street West, Toronto, ON, Canada, M5K 1A2");
for(x=0;x<20;x++){
srPerformGeocode("TD Tower, 55 King Street West, Toronto, ON, Canada, M5K 1A2");
}
return false;
});
});
function srPerformGeocode(address){
if (geocoder){
geocoder.geocode({ 'address': address }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK){
$('#status').prepend("Success : " + address + "<br/>");
}
else{
$('#status').prepend("Failed : " + address + "<br/>");
}
});
}
}
</script>
¿Por qué geocodifica la misma dirección 20 veces? – ceejayoz
como un ejemplo. Noté que a algunos proveedores de API (como google) no les gusta que golpeen con demasiada frecuencia en sus puertas. Me gustaría reducir la frecuencia de la llamada usando un temporizador, pero tengo problemas para usarlo en un bucle, –
Eso es cierto, pero ¿por qué golpearías sus puertas con la misma solicitud cada vez? – ceejayoz