Оптимизация JavaScript обратного отсчета - PullRequest
0 голосов
/ 23 апреля 2019

Я не очень знаком с JavaScript, но мне нужно настроить обратный отсчет для отображения дней, часов, минут и секунд отдельно. Я нашел следующий код JS, однако я не уверен, что этот код является оптимальным. Не могли бы вы порекомендовать мне лучшее решение, если это возможно?

<script>
        // Set countdown
        var cddate = new Date("May 31, 2019 16:55:00").getTime();
        var x = setInterval(function() {
            var now = new Date().getTime();
            var distance = cddate - now;

            // Store vars (Hours + 1 to set GTM+1 time)
            document.getElementById("d").innerHTML = Math.floor(distance / (86400000));
            document.getElementById("h").innerHTML = Math.floor((distance % (86400000)) / (3600000)) + 1;
            document.getElementById("m").innerHTML = Math.floor((distance % (3600000)) / (60000));
            document.getElementById("s").innerHTML = Math.floor((distance % (60000)) / 1000);
        }, 1000);
</script>

Я бы хотел отобразить отдельные переменные из JS как: <p id="x"></p>

Заранее спасибо!

1 Ответ

0 голосов
/ 23 апреля 2019

вы задали 2 вопроса здесь.

1-й вопрос: вы уже используете лучшее решение.

2-й вопрос: я думаю, что вы просите показать обратный отсчетв одном теге p.Если я прав, попробуйте этот код.

var cddate = new Date("May 31, 2019 16:55:00").getTime();
        var x = setInterval(function() {
            var now = new Date().getTime();
            var distance = cddate - now;
            var count = Math.floor(distance / (86400000)) + ' ' + (Math.floor((distance % (86400000)) / (3600000)) + 1) + ':' + Math.floor((distance % (3600000)) / (60000)) + ':' + Math.floor((distance % (60000)) / 1000);
            document.getElementById("xid").innerHTML = count;
        }, 1000);
<p id="xid"></p>
...