2015-01-20 4 views
0

Я динамически добавляю элементы на свою веб-страницу, используя следующий код. Он работает, но он замораживает страницу. Может ли кто-нибудь объяснить, почему это происходит?JS Error - невосприимчивый скрипт

<script> 
      $(function() { 
       var ruler = $("#ruler").height(); 
       var body = $("body").height(); 
       while (ruler <= body) { 
        $("#rulerStart").append("<div class='lineLarge'></div><div class='lineSmall'></div>"); 
       }; 
      }); 
     </script> 
+3

вам нужно добавить проверку в то время, так что цикл не работает вечно. – vaskort

ответ

2
var ruler = $("#ruler").height(); 
var body = $("body").height(); 

Эти значения являются статическими. После установки всегда устанавливайте.

Вам нужно сбросить их внутри цикла:

$(function() { 
    var ruler = $("#ruler").height(); 
    var body = $("body").height(); 
    while (ruler <= body) { 
     $("#rulerStart").append("<div class='lineLarge'></div><div class='lineSmall'></div>"); 
     ruler = $("#ruler").height(); 
     body = $("body").height(); 
    }; 
}); 
Смежные вопросы