Формат даты Timeago только для менее чем 24 часа назад
Я хотел бы использовать плагин jquery Timeago в качестве формата даты. Однако, когда время назад превысило 24 часа, я хотел бы показать другой формат.
Я пытался настроить код, но мои навыки подводили меня:/
РЕДАКТИРОВАТЬ:
var itemDate = '2014-05-17T09:24:17Z';
if(itemDate > 'THAN 24 HOURS')
{
$('body').append('<div>show normal date like 17.05.2014</div>');
}
else
{
$('body').append('<time class="timeago" datetime="'+itemDate+'"></time> ');
$(".timeago").timeago();
}
1 ответ
Решение
Вы можете создать функцию, которая проверяет, старше ли дата на 24 часа или нет.. может быть что-то вроде:
function is_older_than_24hours(datetime) {
var before = new Date(datetime),
now = new Date();
return ( ( now - before ) > ( 1000 * 60 * 60 * 24 ) ) ? true : false;
}
// Then you use your usual code
$(function(){
var itemDate = '2014-05-17T09:24:17Z';
if(is_older_than_24hours(itemDate)) {
var d = new Date(itemDate),
day = ( d.getDate() > 9 ) ? d.getDate() : '0' + d.getDate(),
month = ( d.getMonth() > 8 ) ? d.getMonth() + 1 : '0' + (d.getMonth() + 1),
year = d.getFullYear();
$('<div/>', { text: month +'.'+ day +'.'+ year }).appendTo('body');
} else {
$('<time/>', { 'class': 'timeago', 'datetime': itemDate })
.appendTo('body')
.timeago();
}
})