Я хочу создать полосу загрузки на странице, которая должна отображаться только в том случае, если пользователь ожидает 2 или более секунд по асинхронному запросу c. У меня есть этот код:
loading: function() {
$(document).on("tdi:ajax:start", function() {
$('.loader').addClass("loader--show");
});
$(document).on("tdi:ajax:end", function() {
$('.loader').removeClass("loader--show");
});
},
Но сейчас полоса загрузки мигает на экране всякий раз, когда есть запрос даже 1 мс. Если я устанавливаю тайм-аут на addClass, он просто задерживается, когда появляется панель загрузки, и затем не исчезает, потому что конечное событие сработало за это время. Так или иначе, после того, как стартовое событие сработало, мне нужно измерить, произошло ли конечное событие, и если нет, добавить loaderClass, пока не сработает конечное событие. Есть идеи, как мне этого добиться?