【问题标题】:code for putting the clicked element at the first position in a list of elements using jquery使用 jquery 将单击的元素放在元素列表中的第一个位置的代码
【发布时间】:2012-04-02 12:58:16
【问题描述】:

我有一个未排序的项目列表。在该项目列表中,单击的元素应位于顺序中的第一个位置,而在单击的元素之前的其余元素应位于列表中的最后一个位置。

例如: 我有一个这样的元素列表按顺序

项目1项目2项目3项目4项目5项目6项目7项目8

假设如果我点击链接“Item4”,那么 Item4 应该在 Item1 的位置,并且 Item4 之前的项目应该在 Item8 旁边,如下所示

项目4项目5项目6项目7项目8项目1项目2项目3

请查看此要求:--

我还有一个像这里这样的要求,当元素列表增加时,元素将进入下一行。所以我想在列表的两端保留两个箭头。单击这些箭头左侧箭头或右侧错误时,列表应根据箭头方向移动

例如: *点击前*

>> Item10 Item11 Item12

点击右侧箭头后:

Item1 Item2 Item3 Item4 Item5 Item6 Item7 Item8 Item9 Item10 >> Item11 Item12

它应该支持这个及以上的要求。 请使用 jquery carousel 或使用任何滑块帮助我解决此问题

提前致谢

【问题讨论】:

    标签: jquery jquery-plugins


    【解决方案1】:

    try this one:

    $(function() {
        $('ul').on('click', 'li', function() {
            //cache clicked element
            var clickedItem = $(this);
    
            //get next siblings and self, and append to first position
            clickedItem.nextAll().andSelf().prependTo(clickedItem.parent());
        });
    });​
    

    【讨论】:

    • 我不明白。如果你点击任一箭头,两边的物品都会到外面去?
    • 没有约瑟夫功能,如果您打开更多选项卡,您可以在 IE 浏览器中看到,然后它会显示箭头以导航到溢出的选项卡..
    • 我是这个 Jquery 和 javascript 的新手。我不知道该怎么做。你可以在这个链接上看到我的要求是怎样的skydrive.live.com/… 谢谢..
    【解决方案2】:

    你可以的

    $('li').click(function(){
       var lis =  $(this).nextAll().andSelf();
       $(this).parent().prepend(lis)
    });
    

    html

    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
        <li>6</li>
        <li>7</li>
    </ul>
    

    在这里摆弄http://jsfiddle.net/c4GNq/

    【讨论】:

    • 感谢 Nicola 我已经实现了你的代码......请帮助我解决额外的要求......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多