В jQuery огромное значение играет объект, именуемый «оберткой», или «обертываемым набором». Он представляет собой набор элементов, которые были выбраны для последующей обработки. Чтобы лучше понять функции обертки, необходимо несколько отдалиться от jQuery и обратиться к работе браузера.
Любой браузер обладает встроенными механизмами Javascript и CSS. Браузер может загружать, считывать и интерпретировать форматированный HTML, Javascript и CSS (безусловно, это далеко не все возможные функции браузеров). Далее будет представлен довольно поверхностный обзор работы браузеров, однако мы надеемся, что он поможет вам понять основы функционирования jQuery.
Браузер загружает HTML документ и создает своеобразную карту документа, которая называется DOM (Document Object Model). DOM, по своему существу, является деревом объектов HTML-документа. Дерево DOM отображает отношения родительских и дочерних элементов. В качестве узлов дерева могут присутствовать элементы, атрибуты, контент и т.д. Следующий рисунок иллюстрирует представление дерева DOM:
Если таблица стилей CSS присоединена к документу или вложена в него, встроенный механизм CSS браузера проходит по дереву DOM и каждому из элементов документа присваивает определенные в таблице стилевые правила. Точно также дело обстоит и с присоединенным или вложенным Javascript.
Библиотека jQuery присоединяется к вашему XHTML документу также как и любой другой Javascript файл. После того, как библиотека будет присоединена, она сможет подготовить механизм Javascript браузера к созданию объекта, обладающего полноценной функциональностью jQuery. Как только вы создадите код jQuery, вы автоматически вызовите готовый к работе объект jQuery.
Выбранные вами элементы будут «обернуты» в объект jQuery, над которым можно совершать различные действия. Функции, примененные к набору, будут циклически применяться к каждому из его элементов. Объект jQuery выполняет все инструкции, которые передаются к нему через цепочку операторов, и останавливает циклическое выполнение тогда, когда дело доходит до последнего объекта в наборе.