Если вы используете MySQL, вы можете сделать это с помощью функции TIMESTAMPDIFF (другие БД, вероятно, имеют что-то подобное). Ниже приведен пример, который вернет 1 час:
abs(timestampdiff(hour,'2019-01-10 16:30','2019-01-10 17:30'))
Предполагается, что вы можете преобразовать целевое время начала и поле строки базы данных в строки даты / времени. Необходимо рассмотреть несколько вариантов - например, вчерашняя полночь находится в часе сегодняшнего часа. Вот несколько примеров:
abs(timestampdiff(hour,'2019-01-10 00:30','2019-01-09 21:30')) day_earlier,
abs(timestampdiff(hour,'2019-01-10 00:30','2019-01-11 01:30')) day_later
Вы могли бы подумать о написании функции базы данных для инкапсуляции логики - в противном случае ваш запрос секвестера будет довольно сложным ...
Я сделал подтверждение концепции модальные диалоговые окна и с jqModal и с BlockUI, и я могу сказать без сомнения, что BlockUI является "самым тонким" из них. Это предоставляет намного более простой доступ блокирования к чему-либо, что может выбрать jQuery, и Вы просто передаете его параметр "сообщения" модального DIV. Это автоматически установит display:block и установит его сверх модального наложения.
В дополнение к стандартным модальным диалоговым окнам я использую его для установки, "ожидайте" диалоговое окно на в моих интерфейсах ajax, если $ .ajax вызов занимает больше времени, чем 250 мс.
Я использовал jqModal вполне немного и действительно как он. Это очень легко к реализации и гибко, однако его основная цель является модальным диалоговым окном.
Я не использовал BlockUI, хотя это, действительно кажется, обеспечивает некоторую другую функциональность. Вместо того, чтобы просто отображать содержание в модальных окнах, это может препятствовать пользователю доступ целый UI или части его.
Другой опцией является Диалоговое окно UI jQuery, которое более универсально и может использоваться для здания. Я использую это в одном приложении, и хотя оно не имеет out-of-the-box функциональности jqModal, я думаю, что было бы очень полезно, если бы я хотел создать пользовательский плагин, который интегрировался с ним.
Я использую BlockUI, и мне он нравится, но слово мудрым: известно, что он ОЧЕНЬ медленный в Firefox в Linux. Максимальное значение ЦП - 100%