2015-05-06 4 views
0

Я пытаюсь преобразования часового пояса в JavaScript, но я получаю это в моей консоли при использовании timezone.js:timezone.js не работает в рамках ZEND 2

предупреждение: Синхронный XMLHttpRequest в основном потоке осуждается, потому что от его вредного воздействия на опыт конечного пользователя. Для получения дополнительной помощи проверьте http://xhr.spec.whatwg.org/.

ошибка: GET http://exodo/tz/asia 404 (Not Found)

ошибка: Uncaught TypeError: Не удается прочитать свойство '1' в нуль

timezoneJS.timezone.zoneFileBasePath = 'tz'; 
timezoneJS.timezone.defaultZoneFile = ['asia', 'backward', 'northamerica', 'southamerica']; 
timezoneJS.timezone.init({ async: false }); 
var dt = new window.timezoneJS.Date(new Date()); 
console.debug(dt.toString()); 
dt.setTimezone('America/Los_Angeles'); 
alert(dt); 

оперативные ответы будут оценены

Спасибо

+0

делает ваш путь Filebase правильно? проверьте вашу сеть .. Ошибка XMLHttpRequest. –

+0

Да, FileBasePath верен, мне не хватало некоторых файлов Olson, которые использует часовой пояс для работы. Спасибо за быстрый ответ, хотя – lucasboko

+0

Я до сих пор получаю предупреждение XMLHttpRequest, но изменение часового пояса работает отлично. – lucasboko

ответ

1

Ясно, что вы см., что GEThttp://exodo/tz/asia 404 (Not Found) не работает.

Вам понадобятся файлы часовых поясов Олсона - timezoneJS.Date использует необработанные данные Олсона для расчета смещений временной зоны. Файлы региона Олсона - это простые, структурированные текстовые данные, которые легко скачиваются и легко анализируются. (Они также сжимаются до очень небольшого размера.) Вы можете скачать с here

Поместите свой каталог файлов Olson где-нибудь под вашим корнем веб-сервера и укажите timezoneJS.timezone.zoneFileBasePath для него. Затем вызовите функцию init. Ваш код будет выглядеть примерно так:

timezoneJS.timezone.zoneFileBasePath = '/tz'; 

Для получения более подробной информации читайте How to setup?

 timezoneJS.timezone.zoneFileBasePath = '/tz'; 
timezoneJS.timezone.defaultZoneFile = ['asia', 'backward', 'northamerica', 'southamerica']; 
    var successFn = function(){ 
var dt = new window.timezoneJS.Date(new Date()); 
console.debug(dt.toString()); 
dt.setTimezone('America/Los_Angeles'); 
alert(dt); 
}; 
timezoneJS.timezone.init({ callback: successFn }); 
+0

Я не был уверен, что/tz должен был удержать. Просто добавил эти файлы, и он отлично работает. спасибо – lucasboko

Смежные вопросы