У меня возникли проблемы с добавлением счетчика в форму поиска при отправке формы. Спусковой механизм в конечном итоге появляется, но только до тех пор, пока функция не завершится.Добавить spinner для ввода на jquery submit
Я попытался воспроизвести ошибку, разбив ее на более мелкие части, но безрезультатно. Вот пример кода. Любые указатели будут оценены.
<form id="search" class="form-inline">
<div class="input-group align-bottom" id="address_search">
<input type="text" name="query" id="query" placeholder="search" class="form-control">
<span class="input-group-btn">
<button class="btn btn-primary" type="submit">
<i id="search-button" class="fa fa-search" aria-hidden="true"></i>
</button>
</span>
</div>
</form>
$("#search").submit(function() {
event.preventDefault();
search = $("#search-button")
search.removeClass("fa-search")
search.addClass("fa-spinner fa-spin")
// Do Something
for (var i = 0; i < 50000; i++){
console.log(i)
}
// Put Search icon back
search.removeClass("fa-search")
search.addClass("fa-spinner fa-pulse")
})
Спасибо за отзыв Рори. Я предположил, что это связано с синхронностью вызова, но я поместил счетчик в тайм-аут, рядом, но не с сигарой. – macintoshPrime