Autor Zpráva
jval
Profil *
Zdravím, potřeboval bych udělat v JS cyklu pauzu.
Mám skript který načte soubor a rozdělí na řádky. Pak by měl pole projít cyklus a vykreslit do google mapy cesty.
Vzhledem k omezení googlu max 10 dotazů na službu DirectionsService bych potřeboval vždy po deseti opakováních udělat pauzu.
Pokud dám setTimeout v každém opakování, tak to funguje
            var lines = new Array;
            var data = new Array;
            $.get('prvni-okruh-vozidlo1.csv', function (file) {
                lines = file.split('\n');
                for (var i = 0; i < lines.length; i++) {
                    (function (ind) {
                        setTimeout(function () {
                            data = lines[ind].split(';');
                            createRoute(data[0], data[1]);
                        }, 1000 + (1000 * ind));
                    })(i);
                }
            });
jenže mapa by se vykreslovala strašně dlouho a proto bych to chtěl urychlit alespoň tím, že bych pauzoval jen po 10 opakovánich.
Prosím poradíte?Díky
Bubák
Profil
Tak zanoříš cyklus do cyklu. vnořený cyklus poběží 10× a vnější cyklus bude s pauzou.
jval
Profil
To jsem zkoušel, ale stejně to selhávalo na limitu googlu. Doteď jsem se s tím pral a nakonec jsem to vyřešil tak, že v csv neukládám jen start cíl, ale už data z DirectionService a v cyklu pak už jen vykresluju Polyline. Mapa se vykreslí prakticky okamžitě a limit tam snad žádný nebude.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0