JavaScript Do/While无限循环

JavaScript Do/While无限循环,javascript,Javascript,我知道这可能是一个常见的问题,但我相信逻辑和代码看起来是正确的,但它似乎仍然循环,直到浏览器崩溃 $("#orderview").click(function(){ do { $(".row1").clone().appendTo(".cardbox"); var i = $( "listrow" ).length; } while (i < 10); }); $(“#orderview”)。单击(函数(){ 做{ $(“

我知道这可能是一个常见的问题,但我相信逻辑和代码看起来是正确的,但它似乎仍然循环,直到浏览器崩溃

$("#orderview").click(function(){
    do {
        $(".row1").clone().appendTo(".cardbox");
        var i = $( "listrow" ).length;
         }
    while (i < 10);
});
$(“#orderview”)。单击(函数(){
做{
$(“.row1”).clone().appendTo(“.cardbox”);
变量i=$(“列表行”).长度;
}
而(i<10);
});
我的函数是创建Listrow类DIV,直到有10个。我的HTML以1 DIV开头

<div class="listrow news" id="row-a">
    <div class="l-padding floatleft">
        <div id="redditThumbnail"></div>
        <div class="articleheader news">
            <p class="mediatitle alignleft" id="redditTitle">
            </p>
            <p class="mediumtext floatleft alignleft">
                Submitted by
            </p>
            <div id="redditUsername"></div>
            <div class="half floatright">
                <p class="mediatext floatright s-color bold h-s-margin">
                    TEST
                </p>
                <p class="mediatext floatright p-color bold">
                    ACTION
                </p>
            </div>
        </div>
    </div>
</div>

提交人

试验

行动

我尝试的JS背后的逻辑是:

  • 克隆第一个DIV
  • 检查存在多少“Listrow”类div
  • 如果有<10个Listrow DIV,则重新启动循环并克隆 另一个
  • 我错过什么了吗?提前感谢您的帮助。

    更改:

    var i = $( "listrow" ).length;
    
    致:

    更改:

    var i = $( "listrow" ).length;
    
    致:


    我没有看到类为
    row1
    的div,并且您忘记了
    列表行的
    长度。我也不认为这会像你想象的那样起作用。为什么不直接使用for循环就可以了?您的html代码缺少一些您在代码中使用的东西,因为这一行var i=$(“listrow”).length;,您得到了一个无限循环;。您正在选择不存在的元素(listrow)并返回0Hi,很抱歉我复制了错误的DIV。我有另一个具有正确“row1”类的DIV。这是一个很好的观点。所以你建议只使用循环10次?老实说,我没有想到这一点。我没有看到一个div包含class
    row1
    ,而您忘记了
    列表行的
    长度。我也不认为这会像你想象的那样起作用。为什么不直接使用for循环就可以了?您的html代码缺少一些您在代码中使用的东西,因为这一行var i=$(“listrow”).length;,您得到了一个无限循环;。您正在选择不存在的元素(listrow)并返回0Hi,很抱歉我复制了错误的DIV。我有另一个具有正确“row1”类的DIV。这是一个很好的观点。所以你建议只使用循环10次?老实说,我没有想到。$('orderview.listrow')应该比搜索整个Dom高效得多。$('orderview.listrow')应该比搜索整个Dom高效得多