我需要通过querySelectorAll
函数获取元素的帮助。
当我调用它并传递一个字符串作为此函数的参数时,多个元素用逗号分隔,return
我将NodeList
带节点但是,它们按first-depth traversal pre-order
排序(其中应该像document body
)一样。如果我想调用method
来返回document
中Array
中保存的更多元素的值,我就会遇到问题。所以我称之为
$('#textinput, #someotherinput').value();
其中id #someotherinput
元素位于元素#textinput
上方,但querySelectorAll
之后的结果是:
[input#someotherinput, input#textinput]
0: input#someotherinput
1: input#textinput
length: 2
__proto__: NodeList
我需要按照我调用$()
时的方式对其进行排序,因为当我需要使用值时,我只看$('#textinput, #someotherinput')
并且查找订单很烦人document body
中的元素,当我不知道在数组的第一个(第0个)位置保存了什么时,使用带有这些元素值的返回数组。是的,我知道querySelectorAll
是traversal pre-order
函数。那么,如何将(尽可能简单的)元素排序到MY订单?
答案 0 :(得分:0)
没有简单的方法来确定元素是否与选择器匹配。您必须重新实现整个规则匹配系统,因此最简单的方法是使用选择器来查询元素。
以您喜欢的顺序获取元素的最简单方法是将选择器拆分为其子选择器,对每个选择器执行查询,然后通过消除重复的元素引用将结果放在一起。