Website development
Comments 52
+8
Нужно:
1. Автоматическое закрытие после выбора даты
2. Выбор несколько дат «зажатой мышкой»
3. Различные установки ограничений выбора дат (minDate, maxDate и кастомные комбинации типа daysOfWeekDisabled: «1,3,5,7»)
+1
1, 3 На самом деле первое последнее пока можно реализовать с помощью события change demo, опцию в конфигурации для этого добавлю.
2 Не знаю, на сколько это будет очевидно. Если даты из разных месяцев — тем более будет не удобно, хотя как опцию можно сделать.
0
2. Первое что сделал — это пытался выделить диапазон зажатой мышкой.
в демо: «3 calendars + range» — стрелки влево/вправо нужно сделать только две по краям — одна влево, одна вправо, а то смотрится и работает не очень кошерно.

А так хороший календарь. Буду использовать. Спасибо.
0
Ну нет, по 2-му пункту, такие штуки вечно факапят выделение текста. Или выделение текста их факапит.
0
2. либо автор уже доработал (тогда где UPD в посте?), либо эта функциональность показана в демо в секциях «Multiple dates» и «Dates range»
+2
Пока не запускал, не могу ничего сказать. Если будут проблемы — issue/pull request-ы приветствуются, и будут исправляться.
+5
Прогресс давно бы остановился, если бы у сторонних плагинов не было фатального недостатка )
0
А получиться ли его использовать не как date picker а как например простой календарь, в духе гугла? Что бы можно было при клике по дням выполнять события (например попап с формой открывать), сохранять данные в json ну и потом рендерить уже сохраненные из json с привязкой к дате и возможностью изменения.
0
Событие change есть, обработчик можете повесить любой. Класс (а значит и внешний вид) элемента каждого дня можно произвольно менять во время рендеринга (событие render).
0
Побольше событий.
Клик по дате (имею ввиду без ее смены, клик по уже выбранной дате).
Наведение курсора на дату, убирание курсора с даты.
И еще добавить возможность отображения номеров недели.

А так да, спасибо.
0
Номера дней недели как раз выпилил, мне показалось, что они не нужны, а только занимают место.
События добавлю.
0
Спасибо. Отличный плагин вышел. Ничего лишнего.
Регулярно приходится делать обычную выборку дат, а от уишного датепикера уже воротит.
Возьму на вооружение.
0
Он основан на другом, потому многое исторически осталось, но я постараюсь поработать над размером. Closure compiler в режиме Advanced его ломает, я как-то пробовал.
0
Да, в нем не все так просто. Но потратив час, можно все проблемы решить. Экономия до 50%.
Если все-же решитесь, вот вам пара хинтов.
1. Можно декларировать вещи, которые не должны менять имя:
options: {
        /** @expose */
        "offset": 0,
        ...
}

2. Также можно обращаться через строковый литерал:
this.options["offset"]

и с jQuery соотв-но:
$['fn'][pluginName] = function (arg) {
        return this['each'](function(i,e){ ... }
}

Скомпиленный код не сменит эти названия.
0
отличная работа,
мне не хватает эмуляции выпадающего списка для выбора года,
что бы дату рождения было выбирать в вашим календарем более удобно.
0
Кликните название месяца и года, там достаточно удобный выбор.
0
подтверждаю — работает. удобно. в первую очередь проверил :)))
спасибо :)
0
Если в поле ручного ввода даты ввести мусор то календарик будет состоять из NaN
0
Спасибо, думаю, до конца недели большинство из указанного в комментариях удастся добавить/исправить.
0
Используется display: flex, но при желании можно поиграть стилями для IE9. На счёт 7-8 — успешно забыл что это такое (border-radius точно работать не будет), jQuery 2.1 beta в комплекте.
Можете попробовать использовать на более старых версиях, но если что-то не будет работать — это за баг не считается.
0
Бывает удобно, когда текущая дата (число) подсвечивается.
И спасибо за отличный плагин.
0
Да, в нём не такой удобный выбор месяца/года, а так же меня пугает верстка вида:

<div class="picker picker--focused picker--opened">ev
  <div class="picker__holder">
    <div class="picker__frame">
      <div class="picker__wrap">
        <div class="picker__box">
          <div class="picker__header">...
          <table class="picker__table">...
          <div class="picker__footer">...
        </div>
      </div>
    </div>
  </div>
</div>

Меня раздражает такое количество обёрток, это ужасно.
0
Странный вопрос, но все же — что вам до верстки генерируемой плагином? Вот серьезно — какие опасания и проблемы кроме «раздражает»?
Что касательно выбора года/месяца — не знаю, что тут удобного. Не сказать, что в pickadate идеально, но и в этом плагине — так себе.
0
Во-первых эстетический вид, во-вторых объем кода (+ сложность), в-третьих удобство настройки внешнего вида. Чем больше элементов — тем больше стилей, тем сложнее всем этим управлять. А если верстки минимум — то и настраивать проще.
0
Простите, а время не поддерживается или я что-то пропустил?
0
Добавьте туда еще «время» и тогда он станет универсальным
0
Думал об этом, попробую добавить в том же стиле, но уже до конца недели не успею, будет позже.
0
Думал сделать ровно то же самое: сделать людское подобие дата-пикера под бутстрап на основе старенького Datepicker. Хорошо, что погуглил.
Автор большой молодец — то, что надо!
0
Интеграция с Bootstrap, к стати, тоже будет. Пока только с UIkit в git версии.
0
При открытии модального окна (Bootstrap) и применении плагина к инпута в модальном окне, календарь оказывается за модальным окном.
0
Да я понимаю. Но, взял jquery ui datepicker — там не надо выставлять z-index.
0
Сделайте пример на jsfiddle, и добавьте баг на GitHub, будем смотреть, исправлять
0
Не нашел прямых ссылок на ваш pickmeup, но пример такой вот. Вставьте туда ссылки на ваши ресурсы (css и js).

Забыл линк: jsfiddle.net/LPBBy/5/
0
Не работает. Прямые линки есть в демо.
И пишите на GitHub, а не сюда.
-1
А есть возможность работы в «простом» режиме? Чтобы не было возможности переключаться на выбор месяца/года, а бегать исключительно по дням?
+1
Да, читайте документацию, пример: jsfiddle.net/z4fmvuzb/40/

P.S. И не пишите комментарии с вопросами под старой статьей, есть для этого Toster, StackOverflow, GitHub issues, либо email на крайний случай.
0
Почему если на странице нету инпута с датой, но подключены скрипты пикера, выводит следующую ошибку:
Uncaught TypeError: Cannot read property '__pickmeup' of null

Пока добавил в код всех страниц заглушку, но это не есть хорошо:
<input type="hidden" class="datepicker">

+1

Статья не самый лучший пример для таких вопросов.
Будьте добры, оформите с демкой здесь: https://github.com/nazar-pc/PickMeUp/issues
Там будем разбираться. Пример демки есть в readme, просто измените чтобы воспроизвести проблему.

Only those users with full accounts are able to leave comments.  , please.