У меня есть страница, которая генерируется с помощью веб-скрепок PHP. Поскольку сбор содержимого вызывает задержку, я пытаюсь ввести индикатор выполнения загрузки, пока происходит загрузка.Javascript, чтобы обновить индикатор выполнения, затем переключить видимый div
Я не привязываю панель к каким-либо фактическим этапам загрузки, я просто запускаю ее в течение 3 секунд, а затем получаю код, чтобы скрыть/показать соответствующий div (первый div содержит загрузочную панель, второй содержит содержание).
У меня есть следующий код, но div php-content появляется мгновенно, а не задерживается. Нет выхода на консоль javascript в хром.
<script type="text/javascript">
$(document).ready(function(){
$("#loader").show();
$("#php-content").hide();
counter = 0;
run();
});
function update(value) {
$("#loadingBar").attr("style","width:"+value+"%");
$("#loadingBar").attr("aria-valuenow",value);
}
function run() {
if (counter <= 3000) {
update(counter);
counter+=10;
setTimeout(run(), 10);
} else {
$("#loader").hide();
$("#php-content").show();
}
}
</script>
И раздел HTML:
<div id="loader">
<div class="progress">
<div id="loadingBar" class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="3000" style="width: 0%">
<span class="sr-only"></span>
</div>
</div>
</div>
<div id="php-content">
<h2>Current Weather Conditions:</h2>
<table class="table table-bordered">
<?php include 'php/scrape.php' ?>
</table>
</div>
UPDATE - Пожалуйста, смотрите мой ответ ниже. После публикации этого вопроса я нашел решение.