2013-04-27 61 views
1

好的,我只是閱讀了所有關於JavaScript日期格式的文章,但我找不到與所有瀏覽器兼容的文章。有人能給我一個堅如磐石的格式嗎?哪個Javascript日期格式與所有瀏覽器兼容?

這是我迄今爲止使用的。但是,它不適用於Firefox 20.0。

var days = Math.floor((new Date() - new Date('2013-04-24T12:00:00Z'))/1000/60/60/24); 

document.getElementById('days').innerText = days; 

然後我想我的HTML文檔中顯示它是這樣的:

<span id="days"></span> 
+0

此網站可能會有所幫助-http://momentjs.com/docs/#/parsing/string/。 *警告瀏覽器對此的支持不一致。由於沒有規定應支持哪種格式,因此某些瀏覽器的作品在其他瀏覽器中無效*。 – 2013-04-27 09:41:05

+0

ISO8601格式將兼容像「」星期五,2013年4月26日13:00:14 GMT「' – 2013-04-27 09:50:39

回答

0

這與您的日期代碼無關,它運行完美精細。只是Firefox不支持innerText屬性。最後一行更改爲以下:

var genericText = document.body.textContent ? 'textContent' : 'innerText'; 
document.getElementById('days')[genericText] = days;

所有新的瀏覽器支持ISO 8601日期格式標準的Datereference)的具體適用的方法使用時。但是,IE8及以下版本不支持ISO 8601格式以及其他一些傳統瀏覽器。

0

據我所知

date = new Date(year, month, day, hours, minutes, seconds, milliseconds); 
utctime = date.getTime() - (new Date()).getTimezoneOffset()*60000; 
utcdate = new Date(utctime); 

是幾乎所有的瀏覽器都支持(包括< = IE8)

+0

時區怎麼樣?如何包括這個? – Tom 2013-04-27 10:36:42

+0

查看更新的答案,並讓我知道它是否可以解決您的問題 – 2013-04-27 11:18:03