document.getElementById("time").innerHTML = formatAMPM();

function formatAMPM() {
   var d = new Date(),
   minutes = d.getMinutes().toString().length == 1 ? '0' + d.getMinutes() : d.getMinutes(),
   hours = d.getHours().toString().length == 1 ? '0' + d.getHours() : d.getHours(),
   ampm = d.getHours() >= 12 ? 'pm' : 'am',
   months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
   days = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
   return days[d.getDay()] + ' - ' + months[d.getMonth()] + '. ' + d.getDate() + '. ' + d.getFullYear() + ' - ' + hours + ':' + minutes + ampm;
}

Может кто-нибудь помочь, чтобы он обновлялся каждую минуту?

-1
Aj_Uthaya 12 Дек 2016 в 14:36

3 ответа

Лучший ответ

Используйте следующий код с setInterval:

setInterval(function () {
    document.getElementById("time").innerHTML = formatAMPM();
}, 1000);

    function formatAMPM() {
        var d = new Date(),
            seconds = d.getSeconds().toString().length == 1 ? '0' + d.getSeconds() : d.getSeconds(),
            minutes = d.getMinutes().toString().length == 1 ? '0' + d.getMinutes() : d.getMinutes(),
            hours = d.getHours().toString().length == 1 ? '0' + d.getHours() : d.getHours(),
            ampm = d.getHours() >= 12 ? 'pm' : 'am',
            months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
            days = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
        return days[d.getDay()] + ' - ' + months[d.getMonth()] + '. ' + d.getDate() + '. ' + d.getFullYear() + ' - ' + hours + ':' + minutes + ':' + seconds + ampm;
      }
<div id="time"></div>
0
Naman 12 Дек 2016 в 11:41

Функция setInterval() используется для регулярного запуска некоторого кода.

Первый аргумент - это имя функции, а второй - интервал в миллисекундах.

Например, замените это:

document.getElementById("time").innerHTML = formatAMPM();

С этим:

setInterval(function() {
    document.getElementById("time").innerHTML = formatAMPM();
}, 60 * 1000);

Где 60 * 1000 - одна минута в мс.

0
user6269864user6269864 12 Дек 2016 в 11:40

Вроде следующего:

setInterval(function(){
    document.getElementById("time").innerHTML = formatAMPM();
}, 60000); // 60000 miliseconds
0
Manwal 12 Дек 2016 в 11:41