javascript42
Главная
Все учебники
Блог
Учебник Flatpickr
Введение
Что такое Flatpickr
История и предпосылки создания
Преимущества перед нативными решениями
Когда использовать Flatpickr
Системные требования и совместимость
Структура документации
Установка и первоначальная настройка
Установка через npm
Установка через yarn
Подключение через CDN
Загрузка и локальное размещение файлов
Подключение стилей
Подключение языковых пакетов
Проверка корректности установки
Базовая инициализация
Простейший пример инициализации
Привязка к элементу input
Привязка к произвольному элементу
Программная инициализация
Множественная инициализация на странице
Инициализация через data-атрибуты
Получение экземпляра Flatpickr
Основные параметры конфигурации
Параметр dateFormat
Параметр defaultDate
Параметр minDate и maxDate
Параметр disable и enable
Параметр mode: single, multiple, range
Параметр inline
Параметр static
Параметр appendTo
Параметр clickOpens
Параметр allowInput
Форматирование даты и времени
Токены форматирования
Форматирование дня, месяца, года
Форматирование времени
Форматирование am/pm
Пользовательские форматы
altInput и altFormat
Парсинг пользовательского ввода
Форматирование для разных локалей
Работа со временем
Включение выбора времени
Параметр enableTime
Параметр noCalendar
Параметр time_24hr
Параметр minuteIncrement
Параметр hourIncrement
Параметр defaultHour и defaultMinute
Ограничение диапазона времени
Комбинирование даты и времени
Локализация и интернационализация
Принципы работы локализации
Подключение языковых файлов
Настройка через параметр locale
Русская локализация
Создание собственной локализации
Переопределение отдельных строк
Форматы даты для разных регионов
RTL-языки
Ограничение и валидация дат
Установка минимальной даты
Установка максимальной даты
Отключение конкретных дат
Отключение диапазонов дат
Отключение дней недели
Функция disable с условиями
Включение только определенных дат
Динамическое изменение ограничений
Режимы выбора
Режим single
Режим multiple
Режим range
Параметр maxDate для multiple
Параметр conjunction для range
Сортировка выбранных дат
Программное управление выбором
События и обработчики
Событие onChange
Событие onOpen
Событие onClose
Событие onReady
Событие onMonthChange
Событие onYearChange
Событие onValueUpdate
Событие onDayCreate
Порядок вызова событий
Контекст this в обработчиках
Множественные обработчики
Методы экземпляра
Метод open
Метод close
Метод toggle
Метод clear
Метод setDate
Метод changeMonth
Метод changeYear
Метод jumpToDate
Метод destroy
Метод redraw
Метод set для изменения параметров
Получение выбранных дат
Стилизация и темы
Структура CSS
Основные классы
Переопределение стандартных стилей
Создание собственной темы
Темные темы
Адаптивный дизайн
Изменение размеров календаря
Кастомизация цветовой схемы
Стилизация диапазонов
Анимации и переходы
Плагины
Архитектура плагинов
Подключение плагинов
Плагин confirmDate
Плагин monthSelect
Плагин weekSelect
Плагин scrollPlugin
Плагин labelPlugin
Создание собственного плагина
Взаимодействие плагинов между собой
Интеграция с фреймворками
Использование с React
Использование с Vue
Использование с Angular
Использование с Svelte
Обертки и компоненты
Реактивность и двусторонняя привязка
Управление жизненным циклом
Обработка событий в контексте фреймворка
Расширенные возможности
Программное изменение конфигурации
Динамическое создание и удаление
Синхронизация нескольких экземпляров
Работа с временными зонами
Пользовательский рендеринг дней
Добавление произвольного контента
Позиционирование календаря
Работа с мобильными устройствами
Доступность
Поддержка клавиатурной навигации
ARIA-атрибуты
Работа с программами чтения экрана
Фокус и tabindex
Семантическая разметка
Контрастность и видимость
Рекомендации WCAG
Производительность
Оптимизация инициализации
Ленивая загрузка
Отложенная инициализация
Управление памятью
Минимизация перерисовок
Bundle size оптимизация
Tree shaking
Профилирование и отладка
Решение типовых задач
Выбор даты рождения
Бронирование и резервирование
Диапазоны дат для отчетов
Календарь событий
Расписание и планирование
Фильтрация по датам
Выбор рабочих дней
Праздничные и выходные дни
Отладка и устранение проблем
Частые ошибки инициализации
Конфликты с другими библиотеками
Проблемы с форматированием
Проблемы с локализацией
Некорректное отображение
Проблемы с событиями
Утечки памяти
Инструменты отладки
Миграция и обновление
Миграция с других библиотек
Обновление между версиями Flatpickr
Breaking changes
Устаревшие параметры и методы
Стратегии миграции
Обратная совместимость
Тестирование
Unit-тестирование
Интеграционное тестирование
E2E-тестирование
Моки и заглушки
Тестирование событий
Тестирование в разных браузерах
Автоматизация тестирования
Безопасность
XSS и инъекции
Валидация на стороне клиента и сервера
Санитизация пользовательского ввода
CSP и политики безопасности
Обработка доверенного контента
Справочник API
Полный список параметров
Полный список методов
Полный список событий
Типы данных
Возвращаемые значения
Сигнатуры функций