0

所以我有这个问题。我想在指定时刻更改列表结构的顺序。

它插入所有元素的问题。

如何指定选择器,所以我只得到了整个列表顺序的重新排列,而没有从另一个列表中获取副本?

$(document).ready(function(){
    $(".row ul li:nth-child(2)").insertAfter(".row ul li:nth-child(3)");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="row">
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
        <li>6</li>
    </ul>
</div>
<div class="row">
    <ul>
        <li>9</li>
        <li>10</li>
        <li>11</li>
        <li>12</li>
        <li>13</li>
        <li>14</li>
    </ul>
</div>

4

1 回答 1

1

您必须遍历每个ul.

$(document).ready(function () {
    $('.row').each(function () {
        $(this).find('ul li:nth-child(2)').insertAfter($(this).find('ul li:nth-child(3)'));
    });
});

演示:https ://jsfiddle.net/pvx8d3uc/1/

于 2015-05-06T05:52:44.290 回答