Особенный календарь 📅 на JavaScript
Возможности:
- эргономичный дизайн;
- отсутствие зависимостей от сторонних библиотек;
- отложенная инициализация;
- темы оформления;
- подсветка праздничных дней:
ru
,tr
иuk
; - локализация.
Поддержка в браузерах:
- Internet Explorer 11 и выше;
- Mozilla Firefox 46 и выше;
- Google Chrome 67 и выше;
- Safari 8 и выше.
npm install calendula
<link rel="stylesheet" href="node_modules/calendula/dist/calendula.all.css" />
<script src="node_modules/calendula/dist/calendula.all.js"></script>
Для подключения только нужной локали и темы:
<link rel="stylesheet" href="node_modules/calendula/dist/calendula.css" />
<link rel="stylesheet" href="node_modules/calendula/dist/themes/default.css" />
<script src="node_modules/calendula/dist/calendula.js"></script>
<script src="node_modules/calendula/dist/locales/en.js"></script>
Или воспользуйтесь инструментом для сборки.
var c = new Calendula({
theme: 'ios',
locale: 'en',
value: '2018-10-11'
//...
});
№ | Свойство | Тип | По умолчанию | Описание |
---|---|---|---|---|
1. | autocloseable | Boolean |
true |
Закрытие календаря при клике мимо него. |
2. | closeAfterSelection | Boolean |
true |
Закрытие календаря при выборе даты. |
3. | locale | String |
en |
Язык интерфейса.be de en es fr it pl ru tr uk |
4. | max | String Date Number |
Максимальная дата. | |
5. | min | String Date Number |
Минимальная дата. | |
6. | position | String |
auto auto |
Позиция календаря относительно switcher .Формат: x y .x : auto , left , center или right .y : auto , top , center или bottom . |
7. | switcher | DOMElement |
Кнопка, при клике на которую открывается и позиционируется календарь. | |
8. | theme | String |
default |
Тема оформления.default black ios metro android |
9. | value | String Date Number |
текущая дата | Выбранная дата. |
10. | years | String |
-11:1 |
Установка диапазона для списка лет. |
Поддерживаемые форматы дат:
2018-11-22
2018/11/22
2018.11.22
22-11-2018
22/11/2018
22.11.2018
new Date(2018, 11, 12)
1418328000000
{day: 22, month: 10 /* 0-11 */, year: 2018}
Открыть календарь.
Закрыть календарь.
Открыть/закрыть календарь.
Проверка открытия календаря.
Получить или установить значение настройки.
Установить событие.
c.on('select', function(e, data) {
console.log(data.day, data.month, data.year);
});
Снять событие.
Установить цветную подсказку на дату.
c.title.set({date: '2018-12-15', text: 'Hello world!', color: 'red'});
c.title.set([
{date: '2018-12-11', text: 'Hello world!', color: 'red'},
{date: '2018-12-12', text: 'Hello world!', color: 'orange'},
{date: '2018-12-13', text: 'Hello world!', color: 'blue'}
]);
Удалить цветную подсказку.
c.title.remove('2018-12-15');
c.title.remove(['2018-12-11', '2018-12-12', '2018-12-13']);
Удалить все цветные подсказки.
Уничтожить календарь: привязку событий, DOM-элементы и пр.
Календарь открыт.
Календарь закрыт.
Выбрана дата.
Тесты:
npm test
Пересборка:
npm run build
MIT License