Lonely Dreamer (sanmai) wrote,
Lonely Dreamer
sanmai

Показываем местное время через JavaScript

Показываем местное время через JavaScript

На сайтах для международной аудитории нередко возникает необходимость показывать время в часовом поясе пользователя. Традиционно это требовало регистрации на сайте и указания временной зоны в настройках, но есть способ проще.

1. В требуемых местах указываем текущее время, например, так:
<abbr class="localtime" data-date="Fri, 29 Jun 2012 12:00:00 -1200"></abbr>
Атрибут 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/
Tags: javascript, useful
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 4 comments