选择元素并使其成为第一个元素

时间:2017-03-16 04:50:46

标签: javascript jquery html css jquery-ui

<ul>
    <li>One</li>
    <li>Two</li>
    <li>Three</li>
    <li>Four</li>
</ul>

当我点击三个时,我希望它像: -

<ul>
    <li>Three</li>
    <li>One</li>
    <li>Two</li>
    <li>Four</li>
</ul>

3 个答案:

答案 0 :(得分:5)

如果你有jQuery,你可以使用:

&#13;
&#13;
$('#items li').click(function() {
  $(this).parent().prepend(this);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul id = "items">
  <li>One</li>
  <li>Two</li>
  <li>Three</li>
  <li>Four</li>
</ul>
&#13;
&#13;
&#13;

如果需要,我也可以写一个非jQuery。

答案 1 :(得分:1)

使用remove()prepend()方法处理点击事件。

&#13;
&#13;
$("body").on("click",'li',function(){
$('ul').prepend($(this));
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<ul>
<li>one</li>
<li>two</li>
<li>three</li>
<li>four</li>

</ul>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

你可以试试这个

        $('#list li').on('click', function () {
            var index = $('li').index(this);
            if (index !== 0) {
                $(this).prependTo($(this).parent());
            }
        });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">

</head>
<body>
    <form id="form1" runat="server">
    <div>
    <ul id="list" style="cursor: pointer;">
        <li>One</li>
        <li>Two</li>
        <li>Three</li>
        <li>Four</li>
    </ul>
    </div>
    </form>
</body>
</html>