从查询返回的元素的顺序应该与1.3.2版本的jQuery中的文档中的元素顺序匹配。我正在从无序列表中进行以下选择。
$el.parents('li')
它从底部向上以相反的顺序返回。
$ el是三级“li”。
我理解它在树上行走,但是这个http://docs.jquery.com/Release:jQuery_1.3.2明确指出元素按它们在文档中出现的顺序返回。这是一个错误吗?
答案 0 :(得分:2)
Parents
遍历DOM,从最近的父级到最外层,这就是“反向”返回的原因。 Jquery通常不对其结果重新排序 - 如果遍历方法是从上到下,则结果按顺序返回(从上到下)。如果遍历方法是从内到外,则结果将“无序”返回。
答案 1 :(得分:1)
这是元素的父母的顺序,这是他们在看父母时的顺序......顺序是按照定义向后的。
这是因为你想要第一个<li>
父母:
$el.parents('li:eq(0)')
答案 2 :(得分:1)
parents
从DOM中的当前节点一直到根,并选择与给定表达式匹配的所有节点。因此,从根目录查看时,匹配顺序相反。
答案 3 :(得分:1)
我无法复制您所看到的内容,但修复方法是撤消jQuery元素数组。
jQuery.fn.reverse = [].reverse;
添加jQuery反向函数,以便$el.parents('li').reverse()
起作用。