Показать сообщение отдельно
  #13 (permalink)  
Старый 07.05.2017, 15:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

wegas,
проверяйте ... -180 места установки таймзоны в минутах (Москва на 2017г.)
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
  <title></title>
</head>
<body><div id = 'show'></div>
<script>
Date.prototype.setTimezoneOffset = function(minutes) {
  var _minutes;
  if (this.timezoneOffset == _minutes) {
    _minutes = this.getTimezoneOffset();
  } else {
    _minutes = this.timezoneOffset;
  }
  if (arguments.length) {
    this.timezoneOffset = minutes;
  } else {
    this.timezoneOffset = minutes = this.getTimezoneOffset();
  }
  return this.setTime(this.getTime() + (_minutes - minutes) * 6e4);
};
function two(a) {
    return (9 < a ? "" : "0") + a
}
function formatTime(a) {
    a = Math.floor(a / 1E3);
    var c = Math.floor(a / 60),
        d = Math.floor(c / 60);
    a %= 60;
    c %= 60;
    return two(d) + " : " + two(c) + " : " + two(a)
}


function Time() {
    var a = new Date;
    a.setTimezoneOffset(-180);
    var c = [
    {t : "До начала занятий", h : 7, m : 30},
    {t : "До начала 1 урока", h : 8, m : 30},
    {t : "До конца 1 урока", h : 9, m : 15},
    {t : "До начала занятий", h : 7, m : 30}],
    d = [], e = a.getDate() + 1, b = 0;
    for (; b < c.length; b++)
    a.setHours(c[b].h, c[b].m, 0, 0),
    c.length-1 == b && a.setDate(e),
    d[b] = a.getTime();
    var k;
    for (b = 0; b < c.length && !(k = new Date,k.setTimezoneOffset(-180), a = d[b] - k.getTime(), 0 < a); b++);
    document.getElementById("show").innerHTML = c[b].t + " по Москве в " +c[b].h +":"+c[b].m+ " осталось " + formatTime(a);
    window.setTimeout(Time, 1E3)
};
Time()

</script>
</body>
</html>
Ответить с цитированием