Date.toString()在Firefox中不能将小时转换为正确的时区
Date.toString() not converting hours to proper timezone in Firefox
我有一些由Django模板渲染的HTML,格式为ISO 8601格式的时间戳,例如:
<span class="my-date">2015-06-04T13:00:00</span>
我正在使用一些Javascript将这个时间戳转换为用户的本地时区:
$(document).ready(function(){
$('.my-date').each( function(){
var tz_date = new Date( $(this).text() );
$(this).text( tz_date.toString() );
});
});
这在Chrome中工作得很好(例如,结果在Thu Jun 04 2015 09:00:00 GMT-0400 (EDT)
),但我在Firefox中有一个问题,它显示Thu Jun 04 2015 13:00:00 GMT-0400 (EDT)
。Firefox似乎正确地附加了用户的时区,但它没有调整时间。
我想在这里检查一下,是否我在代码中做了一些糟糕的假设,或者这是否是Firefox的一个错误。
jsFiddle
与其使用ISO 8601时间戳,不如使用RFC 2822时间戳。Django和javascript的Date.parse()
都与此兼容,Chrome和Firefox的实现也以同样的方式工作。
唯一需要做的改变是在Django模板中呈现时间戳服务器端。与其使用|date:'c'
,不如直接使用|date:'r'
。
相关文章:
- IE在将字符串转换为日期时从日期中删除4小时
- 在ISO转换后,JavaScript时间滞后了一个小时
- 如何在javascript中将秒转换为分钟和小时
- 如何将24小时的日期时间格式转换为12小时的格式
- 在 javascript 中将 24 小时时间转换为 12 小时,运行秒数
- 将秒实时转换为小时和分钟
- 将时间字符串(例如上午 9:00)转换为 24 小时 (0900)
- 画布 - 在调整窗口大小时转换鼠标坐标
- 使用 JS 将毫秒转换为 hh:mm:ss 会增加 1 小时
- 将秒转换为天,小时,分钟和秒
- 如何使用 矩.js 将分钟转换为小时
- 整小时和小数小时双精度值转换为 12 小时制格式时间
- 将滑块的 24 小时时间格式转换为 12 小时
- 时差并在javascript中转换为小时和分钟
- 如何使用 javascript 将小时转换为 12 小时/24 小时格式
- PHP 将日期转换为“空白”天/小时/秒前
- 转换简单的军事小时标准时间
- 将字符串转换为日期对象,添加两个小时并转换回字符串(JavaScript)
- 转换小时,分钟到秒通过解析youtube t= queryparam在javascript/JQuery
- 转换小时、分钟、秒-更干净的代码