Javascript мульти дата - PullRequest
       2

Javascript мульти дата

1 голос
/ 30 января 2012

Я искал похожую проблему здесь, в Stackoverflow javascript, связанном с отображением нескольких дат, но не смог найти то, что я хочу.

Вот этот код: Демонстрация даты JavaScript

Я пытался сделать дату, основанную на разных часовых поясах для разных городов.Например, я хочу показать текущую дату для Нью-Йорка в формате Div в следующем формате:

Monday, January 30, 2012 

.. и другой город, например Лондон, в другом элементе Div в том же формате:

Monday, January 30, 2012

Если день меняется, то меняется и дата.Есть ли способ, как добавить время по Гринвичу к каждому городу, чтобы у меня было возможно отображать как можно больше городов?

Если есть лучший способ и намного проще, например, использовать JQuery, это будетнамного лучше, так как с этим инструментом легко играть.

Ответы [ 2 ]

2 голосов
/ 30 января 2012

Вы можете использовать JavaScript следующим образом:

Преобразовать местное время в другой часовой пояс с помощью этого JavaScript

<html>
<head>
<script language="JavaScript">

// function to calculate local time
// in a different city
// given the city's UTC offset
function calcTime(city, offset) {

    // create Date object for current location
    d = new Date();

    // convert to msec
    // add local time zone offset
    // get UTC time in msec
    utc = d.getTime() + (d.getTimezoneOffset() * 60000);

    // create new Date object for different city
    // using supplied offset
    nd = new Date(utc + (3600000*offset));

    // return time as a string
    return "The local time in " + city + " is " + nd.toLocaleString();

}

// get Bombay time
alert(calcTime('Bombay', '+5.5'));

// get Singapore time
alert(calcTime('Singapore', '+8'));

// get London time
alert(calcTime('London', '+1'));

</script>
</head>
<body>

</body>
</html>
1 голос
/ 30 января 2012
function AnotherCityDate(offset) {
    var monthNames = [ "January", "February", "March", "April", "May", "June",
    "July", "August", "September", "October", "November", "December" ];
    var dayNames=["Sunday","Monday","Tuesday","Wednesday","Thursday",
    "Friday","Saturday","Sunday"]
    // create Date object for current location
    var d = new Date();
    // convert to msec
    // add local time zone offset 
    // get UTC time in msec
    utc = d.getTime() + (d.getTimezoneOffset() * 60000);
    // create new Date object for different city
    // using supplied offset
    nd = new Date(utc + (3600000*offset));
    // return time as a string
    return dayNames[nd.getDay()] + ', ' + monthNames[nd.getMonth()] + ' ' +
      nd.getDate() +  ', ' + nd.getFullYear();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...