我试图使用eq()方法来选择JQuery对象的第三个元素。但出于某种原因,第二和第三种选择以改变的顺序出现:
var selection = $("[name=input0], [name=input1], [name=input2], [name=input3]");
selection.eq(1); //turns out to be input2!!这种行为的原因是什么?我能信任通过脚本中的索引来访问它吗?
发布于 2017-12-01 12:10:24
根据:https://api.jquery.com/multiple-selector/
返回的jQuery对象中DOM元素的顺序可能不相同,因为它们将按文档顺序排列。
发布于 2017-12-04 10:52:08
在回答和评论的帮助下,并阅读一些文档。
原来,jQuery按照元素在DOM (HTML)中的出现顺序选择元素,因此:
使用对jQuery选择的直接数组访问将在使用该顺序时工作,但只有在同时负责HTML的情况下才能信任它,如果要更改布局,则需要记住这一点。
的底线:不是选择特定元素的最佳方法。
https://stackoverflow.com/questions/47593064
复制相似问题