jQuery while循环使浏览器崩溃

时间:2014-03-13 10:19:51

标签: javascript jquery

我的网页中有以下while循环:

<script>
$(document).ready(function(){
    var height = $("#quote").height();
    //alert("Toegestane hoogte: 500px\nHuidige hoogte: "+height+"px");
    while (height > 500) {
        var fontSize = $('p', $('#quote')).css('font-size').split('px')[0];
        var fontInt = parseInt(fontSize) - 1;
        fontInt = fontInt + 'px';
        $('p', $('#quote')).css('font-size', fontInt);
    }
});

不知何故,当我加载页面时,浏览器会继续加载并最终崩溃......

3 个答案:

答案 0 :(得分:1)

var height在循环期间永远不会增加,这会导致无限循环。

答案 1 :(得分:0)

var height永远不会在你的循环中增加,导致无限循环

答案 2 :(得分:0)

使用if语句检查

<script>
$(document).ready(function(){
    var height = $("#quote").height();
    //alert("Toegestane hoogte: 500px\nHuidige hoogte: "+height+"px");
    if (height > 500) {
        var fontSize = $('p', $('#quote')).css('font-size').split('px')[0];
        var fontInt = parseInt(fontSize) - 1;
        fontInt = fontInt + 'px';
        $('p', $('#quote')).css('font-size', fontInt);
    }
});

或高度操作,增加或减少