本文翻译自:JQuery .each() backwards

I'm using JQuery to select some elements on a page and then move them around in the DOM. 我正在使用JQuery在页面上选择一些元素,然后在DOM中移动它们。 The problem I'm having is I need to select all the elements in the reverse order that JQuery naturally wants to select them. 我遇到的问题是我需要按照JQuery自然要选择它们的相反顺序选择所有元素。 For example: 例如:

<ul><li>Item 1</li><li>Item 2</li><li>Item 3</li><li>Item 4</li><li>Item 5</li>
</ul>

I want to select all the li items and use the .each() command on them but I want to start with Item 5, then Item 4 etc. Is this possible? 我想选择所有的li项并对它们使用.each()命令,但是我想从第5项开始,然后是第4项等等。这可能吗?


#1楼

参考:https://stackoom.com/question/5qeC/JQuery-each-向后


#2楼

You cannot iterate backwards with the jQuery each function, but you can still leverage jQuery syntax. 你不能使用jQuery向后迭代每个函数,但你仍然可以利用jQuery语法。

Try the following: 请尝试以下方法:

//get an array of the matching DOM elements
var liItems = $("ul#myUL li").get();//iterate through this array in reverse order
for(var i = liItems.length - 1; i >= 0; --i)
{//do Something
}

#3楼

$($("li").get().reverse()).each(function() { /* ... */ });

#4楼

You can do 你可以做

jQuery.fn.reverse = function() {return this.pushStack(this.get().reverse(), arguments);
};

followed by 其次是

$(selector).reverse().each(...)

#5楼

Here are different options for this: 以下是不同的选项:

First : without jQuery: 第一 :没有jQuery:

var lis = document.querySelectorAll('ul > li');
var contents = [].map.call(lis, function (li) {return li.innerHTML;
}).reverse().forEach(function (content, i) {lis[i].innerHTML = content;
});

Demo here 在这里演示

... and with jQuery: ...和jQuery:

You can use this: 你可以用这个:

$($("ul > li").get().reverse()).each(function (i) {$(this).text( 'Item ' + (++i));
});

Demo here 在这里演示

Another way, using also jQuery with reverse is: 另一种方式,使用反向 jQuery是:

$.fn.reverse = [].reverse;
$("ul > li").reverse().each(function (i) {$(this).text( 'Item ' + (++i));
});

This demo here . 这个演示在这里 。

One more alternative is to use the length (count of elements matching that selector) and go down from there using the index of each iteration. 一种选择是使用length (匹配该选择器的元素的数量)并使用每次迭代的index从那里向下移动。 Then you can use this: 然后你可以使用这个:

var $li = $("ul > li");
$li.each(function (i) {$(this).text( 'Item ' + ($li.length - i));
});

This demo here 这个演示在这里

One more , kind of related to the one above: 还有一种,与上述有关:

var $li = $("ul > li");
$li.text(function (i) {return 'Item ' + ($li.length - i);
});

Demo here 在这里演示


#6楼

我想你需要

.parentsUntill()

JQuery .each()向后相关推荐

  1. jquery.validator验证后ajax提交出现错误解决

    今天使用jquery.validator验证后作ajax提交,总是不能成功:之后发现原来是页面中有报错没有解决.当把页面中的报错解决掉时,可以ajax提交了 <!DOCTYPE html> ...

  2. JQuery获取append后的动态元素:live()和on()

    2019独角兽企业重金招聘Python工程师标准>>> jquery通过 live() 方法附加的事件处理程序适用于匹配选择器的当前及未来的元素(比如由脚本创建的新元素) $(&qu ...

  3. jQuery Ajax调用后如何管理重定向请求

    我使用$.post()使用Ajax调用servlet,然后使用生成的HTML片段替换用户当前页面中的div元素. 但是,如果会话超时,服务器将发送重定向指令以将用户发送到登录页面. 在这种情况下,jQ ...

  4. jquery网页刷新后控件失效_jquery动态增减控件如何才能不刷新页面

    已结贴√ 问题点数:20 回复次数:9 jquery动态增减控件如何才能不刷新页面 用jquery动态管理控件,可是每一次增减控件都会刷新页面,然后控件里面原来输入的值就都不在了,可以怎么来实现在动态 ...

  5. js 解析php serialize,php如何解析jquery serialize 提交后的数据

    客户端通过jquery serialize 提交表单数据 $("#submit_survey").click(function(){ $.post(SITE_URL+'activi ...

  6. ajax jinja,在向Flask发出jQuery AJAX请求后渲染Jinja

    我有一个Web应用程序,当HTML中的select元素发生更改时,它会从Flask获取动态数据.当然这是通过jquery ajax完成的.没有probs在这里我得到了. 问题是,Flask发送的动态数 ...

  7. jquery在节点后后添加html,jquery如何添加节点?

    jquery如何添加节点?下面本篇文章给大家介绍一下使用jquery添加节点的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. jquery如何添加节点? jQuery插入节点的 ...

  8. jquery追加html后删除,jquery动态增加删除元素节点

    jquery动态增加删除元素节点 对于语言编程,不同的思路有着不同的解决办法,Jquery对于动态的ul-li节点的增加删除实力操作思路: 1.做一个按钮用于增加li节点,使用Jquery:appen ...

  9. Easyui笔记:jquery执行append后input的验证失效解决方案

    $('input[type!="hidden"],select,textarea',$("#表单ID")).each(function(){//执行验证器初始化 ...

  10. jQuery对象和DOM对象使用说明

    1.jQuery对象和DOM对象第一次学习jQuery,经常分辨不清哪些是jQuery对象,哪些是 DOM对象,因此需要重点了解jQuery对象和DOM对象以及它们之间的关系.DOM对象,即是我们用传 ...

最新文章

  1. C# Sato CL4NX打印机发送SBPL指令打印表面信息、RFID芯片数据写入
  2. MapReduce实现共同朋友问题
  3. 转:C#动态循环生成button怎么分别写他们的事
  4. 云计算是数据分析的最佳场所吗?
  5. new Scanner(1.txt);读取不到文件中的数据
  6. sql已经完成,生成表
  7. linux通信--信号量
  8. 计算机电子琴弹奏怎么打开,怎么打开电脑键盘电子琴软件
  9. ntopng mysql_网络流量监控工具与分析Ntop和Ntopng
  10. Leetcode--49. 字母异味词分组
  11. python中的update是什么意思_python 字典中的Update()函数
  12. Android SDK上手指南:项目清单
  13. VMware时钟不准的解决之道
  14. 2021年焊工作业压力焊考试题库
  15. u盘ios刻录_ISO to USB(ISO刻录到U盘)下载|ISO to USB(ISO刻录到U盘)官方下载-太平洋下载中心...
  16. PHP中的日期相减函数,在php中有没有日期相减的函数
  17. SAP QM 特性导出及定性定量
  18. 未被授权查看该页 HTTP 错误 401.3 - 未经授权
  19. 同花顺股票交易接口测试
  20. 迎风破局!Cocos 引擎荣获第六届金陀螺奖「年度优秀游戏服务商奖」

热门文章

  1. Android 多屏显示分析
  2. 老毛桃u盘启动pe重建mbr图文教程
  3. android 获取快捷开关_适合收藏丨3dmax快捷键命令大全
  4. diskgeniusv4.4.0_.NET Core 3.0及ASP.NET Core 3.0前瞻
  5. JavaWeb学习总结(十二)--事务
  6. Effective Java 阅读笔记——方法
  7. poj 1033 Defragment
  8. 转载一遍Java规范
  9. 如何确认11.2 RAC Grid Infrastructure的时区
  10. Android - Android Studio 解决访问被墙的问题