Dojo / Манипулирование узлами

В этой главе предлагается обзор функции query, модуля behavior и класса NodeList. Эти конструкции предоставляют лаконичные и высокоэффективные механизмы манипулирования узлами в дереве DOM. Основные темы, рассматриваемые в этой главе: поиск в дереве DOM с помощью функции query и с использованием синтаксиса селекторов CSS, развязка событий и выполнение манипуляций над элементами HTML средствами модуля behavior библиотеки Core и объединение операций в цепочки с помощью синтаксического подсластителя, предлагаемого классом NodeList.
Статьи раздела 'Манипулирование узлами':
NodeList
Nodelist – это специализированный подкласс класса Array, который специально предназначен для использования в некоторых расширениях, чтобы упростить манипулирование совокупностями узлов в дереве DOM. Одна из наиболее интересных осо...
Анимация
Создание анимационных эффектов средствами DHTML часто воспринималось как утомительное занятие, да, собственно, так оно и есть. Однако NodeList делает решение этой задачи таким же простым, как и все остальное, что можно сделать с п...
Аргументы в стиле «функции в виде строк»
Точно так же, как и в методах манипулирования массивами из библиотеки Base, вы можете применять специальные идентификаторы index, array и item при использовании строковых аргументов, как описано в разделе «Обработка массивов» в гл...
Длинный и нестабильный способ
Как разработчик, питающий слабость к удобству, вы могли бы захотеть добавить небольшую панель управления сбоку страницы, с помощью которой можно было бы переключать режим подсветки определенных типов сущностей в результатах поиска...
Методы, напоминающие методы массивов
Если вы помните, в библиотеку Base включено несколько функций, предназначенных для работы с массивами. Вас наверняка обрадует, что класс NodeList обладает многими из этих методов. В частности, методы indexOf, lastIndexOf, every, s...
Модуль Behavior
В состав библиотеки Core входит легковесное расширение, построенное поверх функции query, которое обеспечивает возможность отделе ния событий и манипулирования элементами в дереве DOM от разметки HTML с помощью модуля behavior. В...
Пакетная обработка событий DOM
Привыкнув к мысли, что с помощью NodeList можно реализовать практически все, что угодно, вы наверняка не слишком удивитесь тому, что существует возможность определить для группы узлов реакцию на такие события DOM, как потеря фокус...
Подготовка к использованию dojo.query
Давайте подготовимся к использованию dojo.query на примере простой страницы с разметкой простой структуры, содержащей сценарий. Для краткости в текст примера включена только одна сцена: Once upon a time, long ago... ... ...
Поиск: универсальная реализация
Если вы имеете богатый опыт программирования на JavaScript, у вас не будет сомнений в необходимости средств, выполняющих поиск узлов в дереве DOM на основе некоторого множества критериев. Если все, что вам требуется, – это отыскат...
Пример наблюдения за состоянием
Кроме очевидного случая применения функции dojo.query для поиска узлов в дереве DOM это мощное средство способно изменять способы решения множества общих проблем – благодаря тому, что оно расширяет творческие возможности. В качест...
Размещение
Не удивительно, что в состав NodeList включено несколько методов управления размещением узлов на странице. Среди них имеется метод coords, который, как и одноименная функция dojo.coord, возвращает массив с координатами для каждого...
Расширенная фильтрация
Помимо традиционных возможностей, подобных тем, что имеются в массивах, метод filter класса NodeList предоставляет возможность фильтрации с использованием синтаксиса CSS, когда входной аргумент имеет тип String. Например, первый б...
Создание расширений для NodeList
Хотя имеющийся набор встроенных методов NodeList очень функционален, но пройдет совсем немного времени, и вы обнаружите, что вам очень не хватает какогонибудь особенного метода. К счастью, чтобы расширить возможности NodeList, ну...
Создание цепочек обработки списков NodeList
Методы для работы с массивами, включенные в Dojo, чрезвычайно удобны, когда нет необходимости выполнять последовательность операций, передавая получаемые результаты от одной операции к другой, или когда вы должны использовать толь...
Стиль
Раз есть возможность использовать синтаксис CSS для получения списка узлов, вполне может появиться желание выполнять операции над их стилями. Именно по этой причине NodeList снабжен несколькими методами, которые могут помочь в вып...

Страницы: 1