Hej.

Starałem się pomóc sobie sam ale już tyle razy walnąłem w ścianę że nie wiem co mam zrobić
Chcę zrobić preloader plików zanim załaduje się strona.

Warunki:
ie10+, chrome 30+, ff 25+. jak najwięcej w tym mobilne

Błędy:
Przeglądarka się zawiesza jedyne co można zrobić to ją zamkną lub odświeżyć stronę.



preloadFilesPages(FilesPage["page2"] - jest to lista zwykle 140 plików img(98%),sound,video
Kod
                $.when(function () { preloadFilesPages(FilesPage["page2"]); }).done(function () {
                    $(PAGE_HOLDER).load("page2.html");
                });

preloadFilesPages: function (who) {
                $("#progressbar").show();
                var pr = 0;
                $.each(who, function (i, u) {
                    
                    try {
                        $.ajax({
                            url: u,
                            timeout: 3000 //3 second timeout
                        }).done(function (textStatus, jqXHR) {
                            var wyl = ucl.decimal((i / (who.length - 1)) * 100, 0);
                            if (wyl > pr);
                            {
                                pr = wyl;
                                $("#progressbar").progressbar("value", wyl);
                            }
                        }).fail(function (jqXHR, textStatus) {
                            if (textStatus === 'timeout') {
                                console.error("czas przektoczony");
                                //do something. Try again perhaps?
                            }
                        });
                    } catch (e) { console.error("blad"); }
                });

                $("#progressbar").hide();
            }



Proszę o Podpowiedź lub pomoc.