Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Еженедельный отсчет времени до субботы (https://javascript.ru/forum/misc/61432-ezhenedelnyjj-otschet-vremeni-do-subboty.html)

candro 18.02.2016 01:15

Еженедельный отсчет времени до субботы
 
Здравствуйте! Перерыл весь интернет, но ни как не смог найти "Как сделать на javascript еженедельный отсчет времени". Надеюсь хоть тут помогут....:victory:
Суть проста, нужен счетчик отсчета времени до каждой субботы. т.е. к примеру у нас сегодня четверг и до субботы осталось грубо говоря 1 день 23 часа 20 минут...и т.д.
Если суббота не наступила, то показываем мол "до субботы еще осталось...", а если сегодня суббота то показываем "сегодня суббота" и уже в воскресенье у нас счетчик обновляется и до субботы уже 7 дней....и т.д.

Вот как сделать такое:help:

Decode 18.02.2016 02:10

candro, как-то так:
<script>
    var today = new Date(),
        saturday = new Date( today.getFullYear(), today.getMonth(), today.getDate() + 6 - today.getDay() );


    var timer = setInterval(function() {
      var differenceTime, dd, hh, mm, ss, str;

      if ( new Date().getDay() == saturday.getDay() ) {
        document.body.innerHTML = 'Сегодня cуббота!'
      } else {
        differenceTime = saturday - new Date();

        dd = parseInt( differenceTime / (1000 * 60 * 60 * 24) );
        hh = parseInt( differenceTime / (60 * 60 * 1000) ) % 24;
        mm = parseInt( differenceTime / (1000 * 60) ) % 60;
        ss = parseInt( differenceTime / 1000 ) % 60;

        str = format(dd) + ' дн.  ' + format(hh) + ' час. ' + format(mm) + ' мин. ' + format(ss) + ' сек.';

        document.body.innerHTML = 'До следующей субботы осталось: ' + str;
      }
    }, 1000);

    function format(num) {
      return (9 < num) ? num : "0" + num;
    };

</script>


Часовой пояс GMT +3, время: 19:12.