Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   jQuery each плюс ajax - не работает прогрессбар (https://javascript.ru/forum/jquery/71801-jquery-each-plyus-ajax-ne-rabotaet-progressbar.html)

iRoman 13.12.2017 17:41

jQuery each плюс ajax - не работает прогрессбар
 
Доброго дня всем.
Циклом перебирается массив, по его параметрам отравляются запросы ajax. Запросов много, поэтому добавил async: false. Хотел к этому делу прикрутить прогрессбар, но не выходит. Firefox работает корректно, остальные нет. Подскажите, почему и как обойти?
Пример

Dilettante_Pro 13.12.2017 18:41

Цитата:

Firefox работает корректно, остальные нет
Остальные да.
<style>
.progress0 { height:20px; margin:10px 0 0; width:0px; background-color: blue; transition: width 10000ms linear; }
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

<div class="progress0"></div>
<button id="start">
Start
</button>
<script>
var arr = [];
for (var i = 0; i < 50; i++) {
    arr.push(i);
};
$('#start').on("click",function(){
var str = '';
  $(arr).each(function(i,a){
    $.ajax({
        type: 'GET',
        url: 'https://google.com',
        async: false,
        complete: function () {
   			 $(".progress0").css("width",i*2+'%');
        }
    });
  });
});
</script>

Но странный прогрессбар

iRoman 13.12.2017 19:41

Я анимацию для плавности добавлял, а не для эмуляции работы прогрессбара.

Белый шум 13.12.2017 20:56

https://jsfiddle.net/cLvspc21/5/

iRoman 13.12.2017 21:12

Подойдет. Спасибо!


Часовой пояс GMT +3, время: 05:13.