Jelehenu: Alarmfunktion programmieren

Hallo zusammen,

ich bin sehr neu auf diesem Gebiet und benötige Eure Hilfe für eine Arbeit. Meine Recherche im Internet hat mir leider bisher nicht weitergeholfen. Ich möchte eine Uhr darstellen, die eine Alarmfunktion beinhaltet. Die Uhr ist nicht das Problem das bekomme ich hin, nur finde ich keinen richtigen Einstief in die Alarmfunktion und weiß nicht wie die aussehen soll.

Kann mir da bitte jemand weiterhelfen? Vielen Dank und viele Grüße:)

  1. Hallo,

    Ich möchte eine Uhr darstellen, die eine Alarmfunktion beinhaltet. Die Uhr ist nicht das Problem das bekomme ich hin, nur finde ich keinen richtigen Einstief in die Alarmfunktion und weiß nicht wie die aussehen soll.

    Javascript bietet von sich aus kein solches Event bzw. kennt die Funktionalität eines zeitgesteuerten Alarms (aka "Wecker") nicht. Du müsstest also regelmäßig in kurzen Abständen (setInterval() wäre da nützlich) die aktuelle Uhrzeit abfragen, mit der eingestellten Alarmzeit vergleichen, und bei Erreichen bzw. Überschreiten deine Alarmfunktion aufrufen. Hört sich doch ganz einfach an. ;-)

    Theoretisch könnte man auch auf die Idee kommen, einmal die Differenz zwischen aktueller Zeit und Alarmzeit zu berechnen, und dann setTimeout() mit eben dieser Zeitspanne aufzurufen. Ob das aber auch mit großen Werten für die Zeitspanne zuverlässig ist, weiß ich nicht.

    Viel Spaß beim Experimentieren,  Martin

    --
    Noch Fragen? - Ich weiß es auch nicht. Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
    1. Moin!

      Theoretisch könnte man auch auf die Idee kommen, einmal die Differenz zwischen aktueller Zeit und Alarmzeit zu berechnen, und dann setTimeout() mit eben dieser Zeitspanne aufzurufen. Ob das aber auch mit großen Werten für die Zeitspanne zuverlässig ist, weiß ich nicht.

      Theoretisch ja.

      Die maximale, noch sichere Integer-Zahl soll in Js 2^53 -1 sein. Das dividiere ich im bc durch 24h60min60sek*1000(milli)*365,24 und bekomme so heraus, dass das für mehr als 280.000 Jahre reicht.

      Könnte ein Experiment werden, welches ein paar Generationen beschäftigt. Ich empfehle deshalb dringendend einen Fortschrittbalken einzubauen, damit niemand denkt, "Dat tut nix, dat mach ick aus!"

      Jörg Reinholz

      1. Hallo Jörg,

        ... dass das für mehr als 280.000 Jahre reicht.

        Könnte ein Experiment werden, welches ein paar Generationen beschäftigt.

        und in 280.000 Jahren sitzen Sie dann vorm Computer und grübeln, warum es piept. Hatten wir das nicht schon mal?

        Gruß, Jürgen

        1. Hallo,

          Könnte ein Experiment werden, welches ein paar Generationen beschäftigt. und in 280.000 Jahren sitzen Sie dann vorm Computer und grübeln, warum es piept. Hatten wir das nicht schon mal?

          Hmm. 42? Oder worauf spielst du an?

          Ciao,  Martin

          --
          Wenn alle das täten, wass sie mich können, käme ich gar nicht mehr zum Sitzen. Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
          1. Hallo Martin,

            Könnte ein Experiment werden, welches ein paar Generationen beschäftigt. und in 280.000 Jahren sitzen Sie dann vorm Computer und grübeln, warum es piept. Hatten wir das nicht schon mal?

            Hmm. 42? Oder worauf spielst du an?

            :)

            Gruß, Jürgen

          2. Moin!

            Hmm. 42? Oder worauf spielst du an?

            Oh. In der Reihe kommt auch ein ziemlich cooler Richter vor.

            Gerade erst heute nehme ich ein Schreiben zur Kenntnis: Ich wurde vom Präsident des LG Kassel zum zuständigen Rechtsmittelgericht ernannt.

            Wenn das keinen Alarm triggert weiß ich auch nicht was man da noch tun müsste ...

            Jörg Reinholz

    2. vorgeschlagene Variante 1:

      regelmäßig in kurzen Abständen (setInterval() wäre da nützlich) die aktuelle Uhrzeit abfragen, mit der eingestellten Alarmzeit vergleichen, und bei Erreichen bzw. Überschreiten deine Alarmfunktion aufrufen.

      vorgeschlagene Variante 2:

      einmal die Differenz zwischen aktueller Zeit und Alarmzeit zu berechnen, und dann setTimeout() mit eben dieser Zeitspanne aufzurufen.

      Ich würde eine Kombination aus beiden vorschlagen. Mit Variante 2 alle e.g. 5 Minuten die aktuelle Uhrzeit abfragen. Dazwischen in Javascript zählen. Ich meine mich zu erinnern, das das Zählen von Sekunden in JS einigermaßen schwanken kann. Ich meine es gab auch mal eine Diskussion dazu auf selfhtml.

      Cheers, Baba

      --
      Baba kommt von Basketball
  2. Denke daran dass ein zuverlässiger Alarm in JS denkbar ungeeignet ist, denn ein Nutzer schließt normalerweise eine Seite wenn er sie nicht mehr braucht. Seite zu = Alarm weg. Dort drin einen Alarm zu verstecken der mehr ist als nur ein Lernobjekt, ist nicht ratsam.

  3. Om nah hoo pez nyeetz, Jelehenu!

    Kann mir da bitte jemand weiterhelfen?

    http://wiki.selfhtml.org/wiki/JavaScript/Anwendung_und_Praxis/komfortable_Timer-Funktion

    Matthias

    --
    Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Elfen und Elfenbein. http://www.billiger-im-urlaub.de/kreis_sw.gif