как получить время NTP через через JavaScript - PullRequest
2 голосов
/ 22 марта 2012

Дорогие все, что я использую эту функцию, чтобы получить время по Гринвичу, я новичок в java-скрипте, когда я вызываю функцию getTime, она генерирует предупреждение на веб-странице в виде ее кода, я хочу напечатать время в окне, которое я пытаюсь заменил «alert» на «document.write», но в окне ничего не печатается, любые предложения, пожалуйста:

вот код:

function getTime(zone, success) {
var url = 'http://json-time.appspot.com/time.json?tz=' + zone,
ud = 'json' + (+new Date());
window[ud]= function(o){
success && success(new Date(o.datetime));
};
document.getElementsByTagName('head')[0].appendChild((function(){
var s = document.createElement('script');
s.type = 'text/javascript';
s.src = url + '&callback=' + ud;
return s;
})());
}
getTime('GMT', function(time){ // This is where you do whatever you want with the time:     
alert(time); });

1 Ответ

1 голос
/ 22 марта 2012

Хорошо, вы делаете пример, но не прочитали полное объяснение.

В вашем случае нормально просто предупредить время, так как вы просите это сделать. Если вы хотите определенный формат даты по Гринвичу, вы можете сделать:

// Get London time, and format it:
getTime('Europe/London', function(time){
var formatted = time.getHours() + ':' 
              + time.getMinutes() + ':'
              + time.getSeconds();
alert( 'The time in London is ' + formatted );
});

EDIT:

Если вы хотите напечатать время в окне, вы можете добавить, например, тег SPAN в ваш HTML с идентификатором, скажем, «gmtTime» и иметь следующее:

 // Get London time, and format it:
    getTime('Europe/London', function(time){
    var formatted = time.getHours() + ':' 
                  + time.getMinutes() + ':'
                  + time.getSeconds();
    document.getElementById("gmtTime").innerHTML= formatted;
    });
...