Coder en Javascript

Fermé
YuYu - 14 févr. 2019 à 14:46
 YuYu - 20 févr. 2019 à 14:01
Salut les gars !!!
Je travaille sur un projet et j'ai besoin de créer une sorte de compteur qui me permettra de savoir le temps que j'effectue sur une page internet.
En gros quand j'ouvre la page le fichier s’exécute puis s’arrête quand je sors.

Merci d'avance !!!
A voir également:

1 réponse

Bonjour,
pour connaître la date vous avez l'objet Date.

let dateOuverturePage = new Date();
//-- permet d'obtenir la date avec l'heure et les secondes jusqu'à la millisecondes
//-- c'est un objet donc il faut utiliser la notation pointée et les méthodes qui vont avec

Cet objet à une propriété qui permet d'avoir le temps en millisecondes à partir de la création de Linux. Cela permet d'éviter les calculs de dates qui ne seront pas décimaux et un peu moins simple.

Donc pour avoir une durée vous soustrayez la date de début à la date de fin. Pas vraiment compliqué.

Pour le début vous pouvez facilement démarrer le script au chargement de la page. Par contre vous parlez de 'sortir' je ne comprends pas vraiment ce que ça veut dire. Si vous parlez de la fermeture de la page ou de l'onglet cela ne peut pas marcher car JavaScript étant lié à la page(hypertexte) le programme n'existe plus s'il n'y a plus de page web...

Vous pouvez utiliser un bouton 'stop' dans la page pour simuler cela et obtenir au moment du clic une date.
Pour l'objet date:
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Date
Pour lier une fonction à un 'événement' par exemple un clic sur un bouton:
https://developer.mozilla.org/fr/docs/Web/API/EventTarget/addEventListener

Si vous comptez qu'on vous fasse le boulot en vous tournant les pouces par contre c'est possible mais en payant... on est pas là pour faire à votre place mais aider les gens qui veulent faire par eux mêmes ;)

Du coup si vous avez commencé un script il serais intéressant que vous le publiez ici (avec balises de syntaxes) pour nous indiquer quel est votre difficulté exactement...
0
Pour vous aider:
let dateDebut= new Date().getTime();
function(dateFin){
/** dateFin est un paramètre, une date instanciée avec new et utilisant .getTime() tout comme pour dateDebut.
En calculant l'écart des 2 on obtient la durée en millisecondes.

*/
return  dateFin-dateDebut;
}
0
YuYu > ToraTorapa
20 févr. 2019 à 14:01
Salut ToraTorapa,
j'ai vraiment besoin de votre aide meme si c'est payant, j'aimerais qu'on ait un accord.
J'attends votre retour.
Bien Cordialement,
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 228
15 févr. 2019 à 07:35
le temps en millisecondes à partir de la création de Linux
La date de référence c'est l'époque UNIX, pas la création de Linux. Linux n'existait pas encore au 1er janvier 1970.
0
YuYu-DKFD Messages postés 2 Date d'inscription jeudi 14 février 2019 Statut Membre Dernière intervention 15 février 2019 > ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021
15 févr. 2019 à 08:22
Bonjour ElementW,
Merci pour votre réponse.
J'ai trouvé sur internet, la fonction new Date .
Merci beaucoup pour votre aide.
0
YuYu-DKFD Messages postés 2 Date d'inscription jeudi 14 février 2019 Statut Membre Dernière intervention 15 février 2019
15 févr. 2019 à 08:17
Bonjour ToraTorapa,
Merci d'avoir pris le temps de me répondre. J'ai pris note de vos remarques et conseil
Je travaille sur un projet et moi l’idée c'est de créer une sorte add on qui pourra me permettre de voir sur mon écran par exemple, le nombre de temps que j'ai fait sur netflix a voir un film. Pour cela je veux créer un compteur bien-sur qui saura rquand j'ouvre netflix et quand je resors, je peux avoir la variable temps en seconde cad diviser par 1000 les millisecondes puis une autre variable qui pourra me retourner une conso en Co2.
Je pense pas qu' avec le temps qui me reste pouvoir finir de coder vu que j'apprends en ce mode a coder en javascript.
Est-ce que vous pourrez me proposer quelque chose ?

Merci d'avance.
l
0