li"); 并按特-6ren">
gpt4 book ai didi

javascript - 按特定子级对 DOM 元素进行排序(无 JQuery)

转载 作者:行者123 更新时间:2023-11-28 06:08:37 24 4
gpt4 key购买 nike

我特别希望对此节点列表进行排序:

var liList = document.getElementsById("theOl").querySelectorAll(".theOl > li");

并按特定子项对其进行排序:

liList[someIndex].querySelectorAll('a[href]')[0]

基本上,按照 querySelectorAll('a[src]') 返回的 a 的 src 按字母顺序对整个节点列表进行排序。数组中的每个项目都会有这个元素。它将始终返回 1 个元素。

最佳答案

假设您有一个数组数组,并且您想对它们进行排序以获取第一项,如下所示。

var arr = [[7,2],[3,4],[8,5],[4,5],[2,4],[1,2]],
res = arr.sort((p,c) => p[0]<=c[0] ? -1:1);

在您的情况下,如果它是您要排序的 a 元素的 href 属性,您可能必须执行如下操作。或者,如果您想对内部文本进行排序,可以将 href 替换为 innerTextfirstChild.nodeValue

Array.prototype.sort.call(liList, (p,c) => p.querySelector('a').href <= c.querySelector('a').href ? -1 : 1);

关于javascript - 按特定子级对 DOM 元素进行排序(无 JQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36614594/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com