2

Countdown / Timer

Mit dieser Formel in einem Formelfeld wird ein Countdown oder Timer erstellt, der kontinuierlich mitläuft. Je nachdem, ob man zu einem bestimmten Datum hochzählen oder ab einem bestimmten Datum zählen lassen möchte, muss die Formel "var distance = now - countDownDate" umgekehrt werden.

let startTime := number(datetime(Datumsfeld));
html("
<p id='demo'></p>
<script>
// Set the date we're counting down to
var countDownDate = " + startTime + ";
// Update the count down every 1 second
var x = setInterval(function() {
  // Get today's date and time
  var now = new Date().getTime();
// Find the distance between now and the count down date
  var distance = now - countDownDate;
// Time calculations for days, hours, minutes and seconds
  var days = Math.floor(distance / (1000 * 60 * 60 * 24));
  var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
  var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
  var seconds = Math.floor((distance % (1000 * 60)) / 1000);
// Output the result in an element with id='demo'
  document.getElementById('demo').innerHTML = days + ' Tage ' + hours + ' Stunden ' + minutes + ' Minuten ' + seconds + ' Sekunden';
// If the count down is over, write some text 
  if (distance < 0) {
    clearInterval(x);
    document.getElementById('demo').innerHTML = 'EXPIRED';
  }
}, 1000);
</script>
")

 

Quelle: https://www.w3schools.com/howto/howto_js_countdown.asp

10 Antworten

null
    • Icarus_Ralf_Becker
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo Stefanie, danke für das Skript. Funktioniert fast perfekt. Bei mir versagt es nämlich den Dienst, sobald man in den Fullscreen Modus wechselt. Weißt du warum? Viele Grüße

      • Geschäftsführerin bei Kennes Digital
      • Stefanie_K
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Icarus - Ralf Becker Leider kann ich mir das auch nicht erklären 

    • Icarus_Ralf_Becker
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Ich habe zumindest schonmal die Ursache gefunden, warum das Skript nicht im Vollbildmodus funktioniert. Wenn man ein Formular im Vollbildmodus anzeigen lässt, wird der gesamte Code der Seite dupliziert (😳) und quasi in Vollbildstyles an den Code der Seite ohne Vollbild hinten dran gehangen. Damit existieren dann 2 Elemente mit der ID XXX und das Skript verarbeitet weiterhin im hinteren Layer den Timer im Nicht-Vollbildmodus.

    Ich komme an dieser Stelle leider nicht weiter und wäre für etwas Hilfe sehr dankbar.

    • Leonid_Semik.2
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Hallo Ralf,
    du kannst den Skript so schreiben 
     

    let me:=this;
    closeRecord();
    openFullscreen(me)
    

    dann sollte es klappen
    Grüße

    Leo

      • Geschäftsführerin bei Kennes Digital
      • Stefanie_K
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Leonid Semik Danke, das klappt!

      • Icarus_Ralf_Becker
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Stefanie Kennes wie denn? Ich verstehe auch nicht ganz, was das Skript bringen soll. Es löst ja nicht das Problem, dass das Skript bei Vollbild in 2 Elementen mit der gleichen ID steht. Oder ich habe Leo falsch verstanden.

      Leonid Semik ich weiß, was dein Skript macht. Wie genau soll das helfen und wo soll es eingebaut werden?

      Bild 1 - Timer geht

      Bild 2 - Vollbild - Timer geht nicht

      • Geschäftsführerin bei Kennes Digital
      • Stefanie_K
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Icarus - Ralf Becker ich habe Leos Skript in einen Button namens "Vollbild aktivieren" kopiert. Wenn ich den Vollbildmodus damit starte läuft der Timer auch im Vollbildmodus.

      • Icarus_Ralf_Becker
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Stefanie Kennes und ich habe genau das gleiche getan. Könntest du deine Datenbank, wo es geklappt hat, hier hochladen, damit ich es mal mit meiner vergleichen kann? Irgendwo muss ja ein Unterschied sein. Vielen Dank.

      • Geschäftsführerin bei Kennes Digital
      • Stefanie_K
      • vor 1 Jahr
      • Gemeldet - anzeigen

      Icarus - Ralf Becker Getestet in Chrome und der Android-App mit der beigefügten Datenbank.

    • Icarus_Ralf_Becker
    • vor 1 Jahr
    • Gemeldet - anzeigen

    Stefanie Leonid Semik Guten Morgen. Vielen Dank an Stefanie für die Datenbank. Ich habe die Ursache des "Versagers" gefunden. Die o. g. Vorgehensweise funktioniert nur, wenn der Datensatz aus einer Ansicht vom Typ "Tabelle" heraus geöffnet wird. Wird der Datensatz in einer Ansicht "Formular" direkt und eben nicht zunächst als Popup angezeigt, versagt der Countdown im Fullscreen auch mit Leos Skript. Die Herausforderung ist nun, dass Dashboard ja in der Regel eben in der Formularansicht dargestellt werden und ich deswegen ungern den Ansichtstyp ändern möchte. Das wirkt einfach nicht gut. Leo, hast du eine Idee wie man das trotzdem zum Laufen bekommen könnte? Vielen herzlichen Dank vorab.

Content aside

  • 2 „Gefällt mir“ Klicks
  • vor 1 JahrZuletzt aktiv
  • 10Antworten
  • 394Ansichten
  • 3 Folge bereits