Библиотека Cash — это лёгкий и современный аналог jQuery, предоставляющий удобный API для работы с DOM, событиями, AJAX и анимацией. Важной частью работы с Cash является понимание параметров функций, так как от этого зависит корректность выполнения операций и предсказуемость результатов.
Практически все функции Cash, которые работают с элементами DOM, принимают первым аргументом селектор. Селектор может быть:
Строкой — CSS-селектор, по которому будут найдены элементы.
const items = $('li.active');DOM-элементом — одиночный HTML-элемент.
const item = $(document.getElementById('main'));Массивом или NodeList — коллекция элементов, на которых будет применяться метод Cash.
const nodes = $([document.body, document.head]);Если селектор не соответствует ни одному элементу, Cash возвращает пустой объект, что позволяет безопасно вызывать методы без дополнительных проверок на null или undefined.
Многие методы Cash принимают функцию обратного вызова (callback), которая вызывается для каждого элемента коллекции:
В качестве параметров функции колбэка передаются:
index).element).Функция может возвращать значение, которое влияет на выполнение
метода, например, при использовании методов .css(),
.attr() или .html().
Пример использования колбэка для динамического изменения текста:
$('li').text((index, oldText) => `Элемент ${index}: ${oldText}`);
Методы .css(), .attr(),
.prop() могут принимать два типа аргументов:
Строковый ключ и значение:
$('div').css('color', 'red');
$('input').attr('disabled', true);Объект с парами ключ–значение, что позволяет устанавливать несколько свойств одновременно:
$('div').css({
color: 'blue',
backgroundColor: 'yellow'
});Методы работы с событиями .on(), .off(),
.one() имеют несколько вариантов вызова:
on(event, selector, handler) Позволяет делегировать событие для потомков:
$(document).on('click', 'button', event => console.log(event.target));on(event, handler) Применяется напрямую к выбранным элементам:
$('button').on('click', () => alert('Нажато!'));Параметр event может содержать данные, переданные
через .trigger().
Методы .fadeIn(), .fadeOut(),
.slideUp(), .slideDown() используют следующие
параметры:
'slow'/'fast'.'linear'
или 'swing').Пример:
$('div').fadeIn(400, 'swing', () => console.log('Анимация завершена'));
Метод .ajax() в Cash наследует структуру из jQuery и
принимает объект с настройками:
'GET',
'POST' и т.д.).'json', 'text', 'html').Пример:
$.ajax({
url: '/api/users',
method: 'GET',
dataType: 'json',
success: data => console.log(data),
error: err => console.error(err)
});
Cash стремится к предсказуемости. Основные принципы:
Цепочка методов: почти все методы возвращают объект Cash, что позволяет вызывать методы подряд.
$('div').addClass('highlight').fadeIn(300);Доступ к конкретному значению:
.html(), .text(), .val()
без аргументов возвращают текущее содержимое элемента.
const value = $('input').val();.attr() и .prop() при вызове без
значения возвращают текущее свойство или атрибут.
Булевы значения: методы вроде
.hasClass() возвращают true или
false.
Итераторы и массивы: методы
.toArray() и .get() возвращают массив
элементов DOM.
undefined..toArray() или .get().Такое структурированное понимание параметров и возвращаемых значений позволяет использовать Cash максимально эффективно и без неожиданных ошибок.