Я генерирую много контента на странице с помощью javascript, и я замечаю, что на странице ничего не отображается, пока javascript не закончит работу. Если вы запустите эту простую страницу, вы увидите цифры, отсчитываемые в консоли, а затем, когда цикл будет завершен, наконец, содержимое загружается на страницу.Обновление страницы в середине цикла javascript
<html>
<head>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.min.js" type="text/javascript"></script>
</head>
<body>
Hello
<script>
$(function(){
for(var i=9999; i>0; i--){
console.log(i)
$('body').append('<p>' + i*i*i + '987987 Lorem ipsum dolor sit amet. </p>')
}
})
</script>
</body>
</html>
Разве это не есть способ а) немедленно отображать статическое содержимое страницы и б) отображения каждого бита генерируемого текста, как только он будет создан? Правильно ли я предполагаю, что, если есть способ, он сильно замедлит цикл? Может быть, я мог бы пойти на компромисс, когда он сразу же отображает содержимое экрана, а затем будет автоматически проходить все остальное обычным способом. Я просто не хочу сидеть в течение нескольких секунд, чтобы ждать, чтобы увидеть содержимое на странице, когда я знаю, что он уже сгенерирован.
возможно дубликат [jQuery append в цикле - DOM не обновляется до конца] (http://stackoverflow.com/questi ons/19058858/jquery-append-in-loop-dom-does-not-update-to-end) – bruchowski