Как я могу сделать отсчет времени в определенное время? JQuery или JS

0

я получаю время через json, как это

"timeAddedToDrive": 1398813844020

Im интересно, могу ли я создать jQuery или JS, которые начали отсчет с того времени, так что пользователи могут видеть, сколько времени прошло со времени, которое произошло в секундах, например

event was 48:05 minutes ago...

Это возможно?

PD: извинения за мой английский, я знаю его довольно плохо

Теги:
timer
epoch

1 ответ

1
Лучший ответ

Я рекомендую использовать библиотеку moment.js.

Вы можете использовать эту библиотеку для преобразования значений даты из разных форматов хранения в другие, включая удобные для чтения описания, которые вы ищете.

Функция .fromNow() близка к тому, что вы ищете, но она, вероятно, недостаточно точна. С немного больше усилий, вы можете использовать moment.js для определения diff в метки времени относительно настоящего времени, конвертировать, что duration и затем получить минуты и секунды от продолжительности.

var timeAddedToDrive = 1398813844020;

var now = moment();
var timePassed = now.diff(timeAddedToDrive);

// fromNow function works but is not precise
alert( moment(timeAddedToDrive).fromNow());

// for more precision we'll get the minutes and seconds from the DURATION
var seconds = moment.duration(timePassed).seconds(); 
var minutes = moment.duration(timePassed).minutes(); 
var output = "event was " +
    minutes.toString() + ":" + 
    seconds.toString() + " minutes ago"

alert( output );

Здесь jsFiddle, который показывает оба подхода: jsFiddle

Надеюсь, это поможет.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню