Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.01.2016, 23:58
Новичок на форуме
Отправить личное сообщение для R45HeR Посмотреть профиль Найти все сообщения от R45HeR
 
Регистрация: 06.01.2016
Сообщений: 2

Неправильно работает таймер обратного отсчёта на сайте.
Ребята, есть таймер, который каждый день отсчитывает время (дни, часы, минуты, секунды) до конца дня (до 00 часов). Вот его код:
function two(a) {
    return (9 < a ? "" : "0") + a
}

function formatTime(a) {
    a = Math.floor(a / 1E3);
    var b = Math.floor(a / 60),
        c = Math.floor(b / 60),
        d = c / 24 | 0,
        c = c % 24;
    a %= 60;
    b %= 60;
	a = Math.abs(a);
	b = Math.abs(b);
	c = Math.abs(c);
  return two(d)  + " "  + " " + two(c) + " "  + " " + two(b) + " "  + " " + two(a) + " " 
};

function Time() {
    var data = Date.parse('01/1/2016') // дата начала 1 шестидневки  строго "месяц/день/год"
    data = new Date(data)
    for (; (new Date).getTime() > data; )  {
    data.setDate(data.getDate()+1)
    }
    var a = data, m = -360 - a.getTimezoneOffset();
    a.setMinutes(m, 0, 0);
    var a = a.getTime() -  (new Date).getTime();
    document.getElementById("showtime").innerHTML = formatTime(a);
    window.setTimeout(Time, 1E3)
};
Time()


Соответственно, на странице элементы с ID = showtime превращаются в таймер обратного отсчёта.

ПРОБЛЕМА в том, что таймер доходит до нуля в 22:00 а потом цифры уходят в минус. Вот так это выглядит:

В 00:00 таймер сбрасывается и начинает отсчитывать С 22 ЧАСОВ. Т.е. сдвиг 2 часа. Как это исправить?
Код писал не я, а какой-то криворукий дебил. Уже много косяков исправил, но с таймером разобраться не могу.

Последний раз редактировалось R45HeR, 07.01.2016 в 00:05.
Ответить с цитированием
  #2 (permalink)  
Старый 07.01.2016, 00:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,080

R45HeR,

строка 36
http://javascript.ru/forum/showthread.php?p=274396

Последний раз редактировалось рони, 07.01.2016 в 01:20.
Ответить с цитированием
  #3 (permalink)  
Старый 07.01.2016, 01:27
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

Ответить с цитированием
  #4 (permalink)  
Старый 10.01.2016, 04:27
Новичок на форуме
Отправить личное сообщение для R45HeR Посмотреть профиль Найти все сообщения от R45HeR
 
Регистрация: 06.01.2016
Сообщений: 2

Сообщение от рони Посмотреть сообщение
R45HeR,

строка 36
http://javascript.ru/forum/showthread.php?p=274396
Пасиба. Исправил -360 на -180 и всё стало нормально. Это не создатель кода дебил, а я дебил

Ну хорошо хоть себе его не присвоил)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как внедрить таймер обратного отсчета на сутки в колесо фортуны? AlexGraur Общие вопросы Javascript 3 04.08.2015 17:43
Таймер обратного отсчета до события boypush Элементы интерфейса 17 04.05.2015 23:35
Таймер обратного отсчета времени. Зацикленный stanislav_lisitsin Элементы интерфейса 0 17.03.2015 00:23
Как сделать таймер обратного отсчета который бы запускался при открытии сайта ibutterfly777 Оффтопик 0 29.10.2014 10:55
Таймер обратного отчёта с выполнение по времени xakerd Элементы интерфейса 1 20.03.2013 00:10