2009-07-08 6 views
35

Является ли порядок элементов в завернутом наборе jQuery гарантией соответствия порядку элементов в разметке?Выполняет ли порядок элементов в обернутом jQuery наборе, всегда соответствует порядку появления элементов в разметке?

Я спрашиваю, потому что мне нужно выполнить операцию над набором вложенных элементов, и мне нужно всегда выполнять операцию в порядке вложенности.

Могу ли я просто запустить операцию с использованием. Итератора на совпадающем наборе, и я всегда получу правильный заказ или мне нужно найти другой способ гарантировать, что порядок операций соответствует порядку вложенности?

Спасибо!

Tim

ответ

11

JQuery будет соответствовать вашей верхней запроса вниз так, согласованный набор всегда будет то же самое.

2

Я забыл, какая конкретная версия была, но JQuery 1.3.x гарантировал, что порядок документов был порядком результирующих элементов, даже с запросами типа «span, div». (Предыдущие версии не вернули результаты в порядке документа, и я нуждался в этом несколько раз.)

25

Просто смотрел на это сам. JQuery делает вернуть вещи в порядке документа согласно следующей статье:

http://docs.jquery.com/Release:jQuery_1.3.2

Так что, если вы выбираете некоторые идентификаторы, как например:

$("#id1, #id2, #id3")

Тогда они будут возвращены в порядке появляются в DOM, не обязательно в том порядке, в котором они указаны. Его, конечно, стоит осознавать это, когда вы обновляете предыдущую версию до более поздней версии jQuery.

+1

+1 для цитирования – pepsi