jquery timer verstreken tijd

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Typo3 Ontwikkelaar / Tijdelijk / Regio Amersfoort

Functie-eisen Minimaal HBO niveau; Kennis en relevante ervaring met: Typo3, PHP, Versiebeheer en webtalen (CCS/HTML); Ervaring met Jira en Confluence is een pré; Goede beheersing van de Nederlandse taal; Je kunt de prioriteit van de werkzaamheden goed inschatten. Bedrijfsomschrijving Als Typo3 ontwikkelaar ga jij je bezig houden met het doorontwikkelen en verbeteren van de Typo3 website. Verder zijn zij op zoek naar iemand die het platform kan migreren naar de nieuwste versie van Typo3. Daarbij wordt ontwikkelt volgens de SCRUM methodiek. Doorontwikkelen van de Typo3 applicatie; Verbeteringen doorvoeren; Huidige platform migreren naar nieuwste versie van Typo3. Locatie/Standplaats Utrecht Arbeidsvoorwaarden Startdatum:

Bekijk vacature »

Bernhard Flokstra

Bernhard Flokstra

08/08/2018 13:32:09
Quote Anchor link
Hoi allemaal,

dmv jquery wil ik een timer maken die laat zien hoeveel tijd er verstreken is sinds een bepaald moment. Het gaat om de tijd in uren en minuten. Er zijn meer dan voldoende timer plugins voor jquery maar ik kan niet echt duidelijk een vinden die doet wat ik wil. De meeste tellen af naar een bepaald punt.

Welke jquery plugin raden jullie aan voor dit doel?
 
PHP hulp

PHP hulp

17/10/2018 12:53:44
 
Thomas van den Heuvel

Thomas van den Heuvel

08/08/2018 13:44:41
Quote Anchor link
Ik zou dit eerst vanuit een functioneel perspectief bekijken. Hoeveel tijd er verstreken is hangt af van:
- het moment waarop je tijd gaat meten
- het huidige moment

Voor het eerste zul je dus ergens een (start)tijd moeten opslaan (cookie? sessie van serverside taal? iets anders?), daarna kun je het verschil telkens opnieuw berekenen.

Mogelijk vind je iets als je zoekt op "jquery stopwatch"?
 
Bernhard Flokstra

Bernhard Flokstra

08/08/2018 14:07:52
Quote Anchor link
De starttijd in een db opgeslagen. Dus daar heb ik zeker al aan gedacht.

Ik zal inderdaad eens googlen op jquery stopwatch. Had tot nu toe gegoogled op jquery show elapsed time. Maar daar kwam ik dus niet echt verder mee
 
Frank Nietbelangrijk

Frank Nietbelangrijk

08/08/2018 21:31:16
Quote Anchor link
Je kunt het probleem in drie delen hakken.

a) het berekenen van het verschil tussen 'nu' en de tijd die opgeslagen is in de database
b) Het weergeven van de uren en minuten (Hoe wil ik dit laten zien op mijn pagina)
c) met een interval zorgen dat je de klok gaat lopen

bij punt a en c heb je zeker GEEN jQuery nodig maar gewoon plain Javascript. Bij punt b zou je mogelijk wel jQuery kunnen gebruiken maar je kunt ook gewoon javascript gebruiken.

Tip:
Als je een timestamp wil creëren in javascript welke uit je database komt dan moet je er rekening mee houden dat een timestamp in PHP in seconden wordt bijgehouden maar in javascript in milliseconden. Je zou een dirty trick kunnen uithalen op deze manier:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php

$date
= new DateTime('01-01-2019 00:00:00');
$timestamp = $date->getTimestamp() * 1000; // naar milliseconden

?>

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Mijn pagina</title>
    </head>
    <body>
        <script>
            var date = new Date(<?php echo $timestamp; ?>);
            alert(date.toDateString());
        </script>
   </body>
</html>


Met de timestamp in milliseconden creëer ik een Date object in javascript. Dit object heeft een scala aan handige functies
Gewijzigd op 08/08/2018 21:34:12 door Frank Nietbelangrijk
 
Thomas van den Heuvel

Thomas van den Heuvel

08/08/2018 22:03:27
Quote Anchor link
Mogelijk gevaar: meten met twee maten: de klok op je PC (JavaScript) en de servertijd (PHP). Deze twee wil je waarschijnlijk niet combineren.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.