На сайтах для международной аудитории нередко возникает необходимость показывать время в часовом поясе пользователя. Традиционно это требовало регистрации на сайте и указания временной зоны в настройках, но есть способ проще.
1. В требуемых местах указываем текущее время, например, так:
Атрибут data-date должен содержать дату
в формате RFC 2822 в любом часовом поясе.
2. В функцию, вызываемую в $(document).ready(), добавляем:
$('.localtime').each(function() {
var $this = $(this);
var date = new Date($this.data('date'));
$this.html(date.toLocaleDateString() + " " + date.toLocaleTimeString());
$this.attr('title', date.toLocaleString());
});
3. Перезагружаем страницу и видим время не в UTC−12, как в атрибуте data-date, а в вашем часовом поясе. Например, в UTC+9 это будет 2012-06-30 09:00.
Пример работы:
http://jsfiddle.net/sanmai/5N2BT/