Spec-Zone.ru › Angular.js 1.5

Улучшить эту документацию Просмотреть исходный код angular.element

  1. функция в модуле ng

Оборачивает исходный DOM-элемент или строку HTML как элемент jQuery.

Если jQuery доступен, angular.element является псевдонимом для функции jQuery. Если jQuery недоступен, angular.element делегирует встроенному подмножеству jQuery в Angular, называемому "jQuery lite" или jqLite.

jqLite — это крошечное, совместимое с API подмножество jQuery, которое позволяет Angular манипулировать DOM в кроссбраузерном режиме. jqLite реализует только наиболее часто используемые функции с целью минимального размера.

Чтобы использовать jQuery, просто убедитесь, что он загружен перед файлом angular.js. Вы также можете использовать директиву ngJq для указания использования jqlite вместо jQuery или для использования определенной версии jQuery, если на странице существуют несколько версий.

Примечание: Все ссылки на элементы в Angular всегда обернуты jQuery или jqLite (например, аргумент element в функции compile/link директивы). Они никогда не являются сырыми DOM-ссылками.
Примечание: Имейте в виду, что эта функция не будет находить элементы по имени тега/CSS-селектору. Для поиска по имени тега попробуйте вместо этого angular.element(document).find(...) или $document.find(), или используйте стандартные API DOM, например document.querySelectorAll().

jqLite Angular

jqLite предоставляет только следующие методы jQuery:

  • addClass() — не поддерживает функцию в качестве первого аргумента
  • after()
  • append()
  • attr() — не поддерживает функции в качестве параметров
  • bind() — не поддерживает пространства имён, селекторы или eventData
  • children() — не поддерживает селекторы
  • clone()
  • contents()
  • css() — получает только встроенные стили, не вызывает getComputedStyle(). В качестве установщика не преобразует числа в строки или добавляет 'px', а также не имеет автоматического префиксации свойств.
  • data()
  • detach()
  • empty()
  • eq()
  • find() — ограничен поиском по имени тега
  • hasClass()
  • html()
  • next() — не поддерживает селекторы
  • on() — не поддерживает пространства имён, селекторы или eventData
  • off() — не поддерживает пространства имён, селекторы или объект события в качестве параметра
  • one() — не поддерживает пространства имён или селекторы
  • parent() — не поддерживает селекторы
  • prepend()
  • prop()
  • ready()
  • remove()
  • removeAttr() — не поддерживает несколько атрибутов
  • removeClass() — не поддерживает функцию в качестве первого аргумента
  • removeData()
  • replaceWith()
  • text()
  • toggleClass() — не поддерживает функцию в качестве первого аргумента
  • triggerHandler() — передаёт фиктивный объект события обработчикам
  • unbind() — не поддерживает пространства имён или объект события в качестве параметра
  • val()
  • wrap()

Дополнительные функции jQuery/jqLite

Angular также предоставляет следующие дополнительные методы и события как для jQuery, так и для jqLite:

События

  • $destroy — AngularJS перехватывает все API уничтожения DOM jqLite/jQuery и генерирует это событие для всех удаляемых узлов DOM. Это можно использовать для очистки любых внешних привязок к элементу DOM перед его удалением.

Методы

  • controller(name) — получает контроллер текущего элемента или его родителя. По умолчанию получает контроллер, связанный с директивой ngController. Если name указан как имя директивы в camelCase, то будет получен контроллер для этой директивы (например, 'ngModel').
  • injector() — получает инжектор текущего элемента или его родителя.
  • scope() — получает scope текущего элемента или его родителя. Требуется, чтобы данные отладки были включены.
  • isolateScope() — получает изолированный scope, если он прикреплен непосредственно к текущему элементу. Этот getter следует использовать только для элементов, содержащих директиву, которая запускает новый изолированный scope. Вызов scope() для этого элемента всегда возвращает исходный неизолированный scope. Требуется, чтобы данные отладки были включены.
  • inheritedData() — то же, что и data(), но поднимается по DOM, пока не будет найдено значение или не будет достигнут верхний родительский элемент.

Известные проблемы

Невозможно подсматривать за angular.element при использовании Jasmine версии 1.x. Смотрите https://github.com/angular/angular.js/issues/14251 для получения дополнительной информации.

Использование

angular.element(element);

Аргументы

Параметр Тип Подробности
element stringDOMElement

Строка HTML или DOMElement, которые нужно обернуть в jQuery.

Возвращаемое значение

Object

Объект jQuery.

© 2010–2017 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://code.angularjs.org/1.5.11/docs/api/ng/function/angular.element

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API