Ответ 1
jQuery будет соответствовать вашему запросу сверху вниз, поэтому согласованный набор всегда будет таким же.
Гарантирован ли порядок элементов в упакованном наборе jQuery совпадает с порядком, в котором элементы появляются в разметке?
Я спрашиваю, потому что мне нужно выполнить операцию над множеством вложенных элементов, и мне нужно всегда выполнять операцию в порядке вложенности.
Могу ли я просто запустить операцию, используя итератор .each()
для соответствующего набора, и всегда получить правильный порядок, или мне нужно найти какой-то другой способ, чтобы гарантировать, что порядок операций соответствует порядку вложения?
jQuery будет соответствовать вашему запросу сверху вниз, поэтому согласованный набор всегда будет таким же.
Просто смотрел на это сам. jQuery возвращает данные в порядке документа в соответствии со следующей статьей:
http://docs.jquery.com/Release:jQuery_1.3.2
Итак, если вы выберете некоторые идентификаторы как таковые:
$("#id1, #id2, #id3")
Затем они будут возвращены в том порядке, в котором они появляются в DOM, не обязательно в том порядке, в котором они указаны. Его, конечно, стоит знать об этом при обновлении с более ранней версии более поздней версии jQuery.
Я забыл, какая именно версия была, но JQuery 1.3.x гарантировал, что порядок документов был порядком результирующих элементов, даже с запросами типа "span, div". (Предыдущие версии не вернули результаты в порядке документа, и я нуждался в этом несколько раз.)