当"<li>"<= 20时添加空"<li>"

Tia*_*ago 2 javascript jquery

如果计数小于或等于20,我正在尝试添加<li>内部,但代码似乎不起作用...<ul><li>

我正在使用以下jQuery:

while ($(".mosaico > li").length() <= 20) {
   $('.mosaico').append('<li>test</li>');
};
Run Code Online (Sandbox Code Playgroud)

似乎没有任何事情发生...... HTML是:

<ul class="mosaico">
    <li>
    </li>

    <li>
    </li>

    <li>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

Rig*_*red 6

.length 是一种财产,而不是一种功能.

但是你不应该像这样循环运行选择器.只需计算您需要的数量,并立即添加所有数据.

var mosaico = $(".mosaico"),
    len = 20 - mosaico.children('li').length,
    str = '';

while( len-- > 0 ) {
    str += '<li>test</li>';
}

mosaico.append(str);
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/pQXNT/2

  • +1 for*不在循环中运行选择器*. (4认同)