Полный список методов

Библиотека Cash — это облегчённая альтернатива jQuery с минимальным размером и высокой производительностью. Она предоставляет удобный API для работы с DOM, событиями, анимацией и AJAX. Рассмотрим полный список методов с подробными объяснениями.


Выбор элементов

  • $(selector) — основной метод для выбора элементов. Принимает CSS-селектор, DOM-элемент, массив элементов или HTML-строку. Возвращает объект Cash с выбранными элементами.

    const items = $('.item'); // выбор всех элементов с классом item
  • .find(selector) — поиск потомков внутри выбранных элементов.

    const links = $('.menu').find('a');
  • .children([selector]) — возвращает прямых потомков выбранных элементов. Опционально можно указать селектор.

  • .parent([selector]) — возвращает родителя каждого элемента. Если указан селектор, возвращает только подходящих родителей.

  • .closest(selector) — поиск ближайшего предка, который соответствует селектору.

  • .siblings([selector]) — возвращает все соседние элементы выбранных элементов.

  • .eq(index) — возвращает элемент по индексу в наборе. Индекс может быть отрицательным, чтобы считать с конца.

  • .first() и .last() — возвращают первый и последний элемент выборки.


Работа с классами

  • .addClass(className) — добавление класса к выбранным элементам. Можно передать несколько классов через пробел.

  • .removeClass(className) — удаление класса.

  • .toggleClass(className, [force]) — переключение класса. Если передан параметр force, класс будет добавлен при true и удалён при false.

  • .hasClass(className) — проверяет, есть ли класс у любого из выбранных элементов. Возвращает true или false.


Управление атрибутами и свойствами

  • .attr(name, [value]) — чтение или запись атрибутов.

    $('img').attr('src', 'image.png');
  • .removeAttr(name) — удаление атрибута.

  • .prop(name, [value]) — чтение или установка свойства DOM. Отличается от .attr() тем, что работает с внутренними свойствами элементов.

  • .val([value]) — получение или установка значения элементов формы.

  • .html([htmlString]) — получение или установка внутреннего HTML.

  • .text([textString]) — получение или установка текста элементов.


Работа с CSS и размерами

  • .css(property, [value]) — получение или установка CSS-свойств. Можно передавать объект с несколькими свойствами.

  • .width([value]) и .height([value]) — получение или установка размеров элемента без учета padding и border.

  • .innerWidth() и .innerHeight() — размеры элемента с padding.

  • .outerWidth([includeMargin]) и .outerHeight([includeMargin]) — размеры элемента с padding, border и опционально margin.


Управление DOM

  • .append(content) — вставка контента в конец выбранных элементов.

  • .prepend(content) — вставка в начало выбранных элементов.

  • .before(content) — вставка перед выбранными элементами.

  • .after(content) — вставка после выбранных элементов.

  • .remove() — удаление элементов из DOM.

  • .empty() — удаление внутреннего содержимого элементов.

  • .clone([withDataAndEvents]) — клонирование элементов. Если передан true, копируются события и данные.


События

  • .on(event, [selector], handler) — добавление обработчика событий. Поддерживаются делегированные события.

  • .off(event, [handler]) — удаление обработчика.

  • .trigger(event, [data]) — вызов события программно.

  • .hover(handlerIn, handlerOut) — упрощённая запись для mouseenter и mouseleave.

  • .focus() и .blur() — программный фокус и снятие фокуса с элементов.


Эффекты и анимация

  • .show([duration], [callback]) — показ элементов с анимацией.

  • .hide([duration], [callback]) — скрытие элементов с анимацией.

  • .toggle([duration], [callback]) — переключение видимости.

  • .fadeIn([duration], [callback]) и .fadeOut([duration], [callback]) — анимация прозрачности.

  • .slideUp([duration], [callback]), .slideDown([duration], [callback]), .slideToggle([duration], [callback]) — анимация высоты элементов.


Работа с данными

  • .data(key, [value]) — получение или установка данных, связанных с элементом.

  • .removeData(key) — удаление данных.


AJAX

  • $.ajax(options) — универсальный метод для AJAX-запросов. Опции включают url, method, data, success, error.

  • $.get(url, [data], [success]) — GET-запрос.

  • $.post(url, [data], [success]) — POST-запрос.

  • $.getJSON(url, [data], [success]) — GET-запрос с ожиданием JSON-ответа.


Утилиты

  • $.each(collection, callback) — перебор массива или объекта.

  • $.extend(target, ...sources) — слияние объектов.

  • $.isFunction(obj), $.isArray(obj), $.isNumeric(obj) — проверка типа.

  • $.parseHTML(htmlString) — преобразование HTML-строки в DOM-элементы.

  • $.proxy(fn, context) — привязка контекста к функции.


Навигация и фильтрация

  • .not(selector) — исключение элементов из выборки.

  • .filter(selector) — фильтрация элементов по селектору или функции.

  • .slice(start, end) — выбор подмножества элементов по индексу.

  • .is(selector) — проверка соответствия элементов селектору.

  • .has(selector) — выбор элементов, содержащих указанные потомки.


Эта структура методов охватывает практически весь функционал Cash и позволяет эффективно работать с DOM, событиями, анимацией и AJAX, используя минималистичный синтаксис, близкий к jQuery.