javascript - 计算所有 div 并按降序添加 span 内的每个数字

标签 javascript jquery

我有之前的代码 question

$("div").each(function(i) {
    $(this).find("span").text(++i);
}); 

-- 完整代码运行 = http://jsfiddle.net/pm3YL/

此 JQuery 代码计算页面中的每个 div 并在 span 内添加订单号

但我需要做同样的降序

所以输出会像这样

http://jsfiddle.net/pm3YL/1/

代替

http://jsfiddle.net/pm3YL/

最佳答案

你可以使用这个:

$($("div").get().reverse()).each(function (i) {
    $(this).find("span").text(++i);
});

演示 here

另一种方式,同时使用 jQuery 和 reverse是:

$.fn.reverse = [].reverse;
$("div").reverse().each(function (i) {
    $(this).find("span").text(++i);
});

此演示 here . (感谢Ian的建议。)

另一种替代方法是使用length(与该选择器匹配的元素的计数)并使用每个元素的index 从那里向下迭代。然后你可以使用这个:

var nr_of_divs = $("div").length;
$("div").each(function (i) {
    $(this).find("span").text(nr_of_divs - i);
});

此演示 here

还有一个,与上面的有点相关,灵感来自 Adeneoanswer :

var nr_of_divs = $("div").length;
$("div span").text(function (i) {
    return nr_of_divs - i;
});

演示 here

关于javascript - 计算所有 div 并按降序添加 span 内的每个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18292154/

相关文章:

javascript - 最后定义的原型(prototype)函数总是在对象初始化时运行

javascript - 如何在angularjs中实现html格式的字符串

javascript - setTimeout 延迟不起作用 - 我做错了什么?

javascript - JS 绑定(bind)函数和函数调用运算符的性质

javascript - 服务 worker 的推送事件未在多个选项卡中调用

javascript - 如何获取未选中的单选按钮(Jquery)?

jquery - jquery 多选择器

javascript - ionic 3 如何在 ErrorHandler 服务中注入(inject)服务/提供者

javascript - 为什么 .html() 方法不加载元素中的数据?

jquery - 关注事件在 jquery 中没有按预期工作