Régler la date() à minuit dans les utilisateurs de fuseau horaire avec moment.js

- Je utiliser moment.js pour afficher une date UTC dans le fuseau horaire local:

var date = new Date(Date.UTC(2016,03,30,0,0,0));
var now = new Date();
var diff = (date.getTime()/1000) - (now.getTime()/1000);

var textnode = document.createTextNode(moment(date).format('dddd, DD.MM.YYYY') + ' a las ' + moment(date).format('HH:mm A'));
document.getElementsByClassName("date")[0].appendChild(textnode.cloneNode(true));

Plus tard, j'ai utiliser le diff variable pour afficher un compte à rebours.

Je voudrais montrer un autre compte à rebours pour tout le monde dans le fuseau horaire local. (À l'aide de la différence jusqu'à son minuit dans leur fuseau horaire, pas en UTC)

Mais je suis struggeling pour le faire fonctionner. Au lieu d'utiliser var date = new Date(Date.UTC(2016,03,30,0,0,0)); j'ai sans doute besoin d'utiliser une fonction de moment.js qui me donne jusqu'à minuit dans le temps aux utilisateurs de la zone.

Le meilleur exemple serait la saint-sylvestre. Si j'utilise UTC tout le monde aurait le même compteur (9 heures), mais dans différentes parties du monde, ce ne serait pas de bon sens. Pour quelqu'un en australie, il devrait être de 2 heures, et pour quelqu'un dans le NOUS 14 heures.

  • Lorsque vous construisez votre date variable, vous appeler explicitement Date.UTC(). Tout ce que vous devez faire est de construire un minuit de la date sans à l'aide de Date.UTC() droit?
  • merci de me faire sentir stupide 😉 vous avez raison... vous pourriez répondre à cette question, donc je ne peux l'accepter
InformationsquelleAutor Snowball | 2016-03-19