Показать сообщение отдельно
  #6 (permalink)  
Старый 13.08.2016, 16:20
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Не так. Смещение временной зоны на клиенте возвращается в минутах, на сервере, если РНР, в секундах.

Если у вас РНР, отдавая страницу клиенту дописывайте в конце нее (перед закрывающим тегом body):

<script>var sZone = <?=date("Z") * 1000?></script>


Сервер и клиент возвращают смещение часового пояса с разными знаками по разную сторону от Гринвича. Поэтому плюсуя к смещению клиента смещение сервера получаем смещение на которое нужно скорректировать часы клиента, например:

var Zone = new Date().getTimezoneOffset() * 60 * 1000 + sZone;
var watch = new Date((new Date).getTime() + Zone); //время которое устанавливается в часах

Последний раз редактировалось laimas, 13.08.2016 в 17:12.
Ответить с цитированием