Ik gebruik html2cancvas waarmee ik een foto van mijn scherm wil nemen.
Alles gaat gewoon goed echter zou ik graag de huidige datum en tijd erbij willen hebben.
De code die ik gebruik ervoor is deze.:

 html2canvas($('#snapshot'),{

 onrendered: function (canvas) {
 var a = document.createElement('a');
 a.href = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");
 a.download = 'foto genomen op.png';
 a.click();
 }
 });


$now1 is in php voorzien van een datum tijd notatie.
Ik heb al van alles geprobeerd om dat erbij te krijgen maar wilt niet lukken.
Heb ook dit geprobeerd.:
 a.download = 'foto genomen op '+datetime+'.png';  
maar werkt ook.
Heb het zover via.:
  var d = new Date();
a.download = 'foto genomen op '+ d +'.png';

echter wil het zien als 2020-06-60 15:30:22.
Hoe moet mijn stukje eruit zien om dit te fixen?
je bedoelt dat het laatste niet werkt?
Waar haal jij datetime dan vandaan?
mijn excusses, was net mijn post aan het aanpassen.
 var d = new Date();
a.download = 'foto genomen op '+ d +'.png';

werkt nu , echter wil het zien als 2020-06-60 15:30:22.

Ik heb hier gekeken.: link en dan zou ik dit moeten maken.:
 a.download = 'foto genomen op '+ d.getFullYear()+'-'+ d.getMonth()+'-'+ d.getDate()+' '+ d.getHours()+':'+ d.getMinutes()+':'+ d.getSeconds()+ '.png';  


Zit nu te twijfelen of dit niet anders en korter kan?

Onderhand dusdanig zelf gevonden , echter ondervind ik nog een klein probleem.

Als ik : gebruik zie ik _ ,terwijl in voorbeelden ze wel gewoon een : en dit ook zien, waar kan dit aan liggen?
Wait, toon je nu niet de huidige datum in plaats van de datum die je opgeslagen hebt?
De foto word genomen op dat tijdstip, dus is kloppend.
Date is een class. Objecten van een class kun je niet zomaar "afdrukken" tenzij er een soort van magische toString-methode is ofzo. En de vraag is dan ook wat je hiermee wilt of bedoelt. Date heeft dit ook, maar jij bent blijkbaar naar iets anders op zoek (een andere formattering).

Als je simpelweg "javascript date" in Google had gegooid geeft het eerste resultaat je een complete referentie.

Als je hierin nog wat verder had gegraven dan had je kunnen constateren dat er meerdere opties zijn die redelijk in de buurt komen bij wat je zoekt, bijvoorbeeld toISOString(), toUTCString() of toJSON().

En als je van deze standaarden wilt afwijken dan zul je je eigen ding moeten bouwen.

Houd je er wel rekening mee dat een timestamp zoals jij die wilt gebruiken (yyyy-mm-dd hh:ii:ss) niets zegt over de tijdszone waar iemand in zit? Het lijkt mij beter om -in ieder geval qua "interne" communicatie in de applicatie/database- van een vaste tijdszone gebruik te maken, bij voorkeur UTC, en eventuele vertalingen naar andere tijdszones in een hogere applicatielaag (weergave?) te regelen.

Maar goed, met enige moeite had je dit dus allemaal zelf kunnen vinden.
Thomas van den Heuvel op 01/07/2020 15:19:15

Date is een class. Objecten van een class kun je niet zomaar "afdrukken" tenzij er een soort van magische toString-methode is ofzo. En de vraag is dan ook wat je hiermee wilt of bedoelt. Date heeft dit ook, maar jij bent blijkbaar naar iets anders op zoek (een andere formattering).

Als je simpelweg "javascript date" in Google had gegooid geeft het eerste resultaat je een complete referentie.

Als je hierin nog wat verder had gegraven dan had je kunnen constateren dat er meerdere opties zijn die redelijk in de buurt komen bij wat je zoekt, bijvoorbeeld toISOString(), toUTCString() of toJSON().

En als je van deze standaarden wilt afwijken dan zul je je eigen ding moeten bouwen.

Houd je er wel rekening mee dat een timestamp zoals jij die wilt gebruiken (yyyy-mm-dd hh:ii:ss) niets zegt over de tijdszone waar iemand in zit? Het lijkt mij beter om -in ieder geval qua "interne" communicatie in de applicatie/database- van een vaste tijdszone gebruik te maken, bij voorkeur UTC, en eventuele vertalingen naar andere tijdszones in een hogere applicatielaag (weergave?) te regelen.

Maar goed, met enige moeite had je dit dus allemaal zelf kunnen vinden.


Ik heb het ook al opgelost , echter mijn vraag was waarom ik die : niet kreeg te zien.
In welke precieze setting krijg je een underscore te zien in plaats van een dubbele punt?

Ik kan mij zo voorstellen dat : in bepaalde situaties een speciale betekenis heeft.

Reageren