Я добавил moment.js для управления часовым поясом в моем webapp. Я настроить свои устройства в Новой Зеландии (GTM +13) и отлично работает на:Moment.js и часовой пояс не работают только на Android Chrome
- Iphone: Safari & Chrome
- Android: Firefox
- OSX: Safari & Chrome
Возвращает 1 больше дня (я в GTM +0). Но он не работает на Android Chrome (я тестировал его на нескольких устройствах Android), и я не знаю, почему. Мой код:
var dateFunctions = {
"getCurrentDate": function(){
return moment().valueOf();
},
//I need Date type to use in a custom Calendar component.
"getFormatDate": function(dateLong){
var d = moment(parseInt(dateLong)).toDate();
},
//For jquery calendar. input: Date without local time; output: timestamp
"getDate": function(date){
var currentDay = moment();
var d = moment(date).set("hour",currentDay.get("hour")).set("minute",currentDay.get("minute")).set("second",currentDay.get("second")).set("millisecond",currentDay.get("millisecond"));
return d.valueOf();
},
...
}
... ...
//it should return tomorrow (GTM +13) in Android Chrome
var currentDay = managedates.getFormatDate(managedates.getCurrentDate())
Я думаю, что, возможно, это связано с учетной записью Google, связанной с Android устройства. Есть идеи?
Edit: я редактировал его, чтобы добавить мой обновленный код
Webapp - это заказы, и сервер не может проверить часовой пояс клиента, поэтому клиент должен отправить правильные даты (если клиент из Новой Зеландии GTM +13, ему необходимо отправить следующий день на сервер) , Webapp работает с отметками времени (нужно только проверить день, а не время), поэтому мне нужно добавить часовой пояс, когда я конвертирую дату в другой формат для ее отображения или отправки на сервер. Я стараюсь с вашим кодом, и вы правы, мне не нужен момент-время, спасибо. Но проблема с Android Chrome (только в этом случае) не исчезла. – josekron
Рассмотрите возможность использования функции 'format', так что вы можете отправить обратно строку. Обычно ISO8601 - это путь. –