2015-05-06 31 views
0

我想時區轉換的JavaScript,但我一直在使用timezone.js在我的控制檯得到這個:timezone.js不是在Zend框架的工作2

警告:同步XMLHttpRequest的主線程上被推薦使用,因爲對最終用戶的體驗產生不利影響。如需更多幫助,請查詢http://xhr.spec.whatwg.org/

錯誤:GET http://exodo/tz/asia 404(未找到)

錯誤:未捕獲類型錯誤:空的不能讀取屬性 '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)失敗。

您需要Olson時區文件 - timezoneJS.Date使用原始Olson數據來計算時區偏移量。 Olson地區的文件是簡單的結構化文本數據,可以快速下載並輕鬆解析。 (他們也壓縮到一個非常小的尺寸。)您可以從here

下載您的Web服務器根目錄下的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