Countdown



  • Hallo.

    Ich hab folgendes Problem:

    Ich habe zwei HTML Seiten (seite.html, ticker.html). seite.html ist meine Hauptseite und Ticker.html repräsentiert einen Newsticker, auf der Newsmeldungen von unten nach oben in einer Laufschrift laufen.
    Ich möchte es nun gerne so einrichten, dass seite.html automatisch ticker.html aufruft, wenn der Benutzer 5 Minuten die Maus nicht bewegt. Ich kann zwar grundsätzlich setTimeout verwenden, um einen Countdown zu aktivieren und nach dessen Ablauf eine bestimmte Seite zu öffnen, aber das darf in diesem Fall ja erst passieren, wenn der User die Maus nicht mehr bewegt.
    Hat vielleicht irgendjemand eine Idee, wie ich das machen könnte? Gibt es da überhaupt eine Lösung für?

    Und bitte sagt mir jetzt nicht, dass eine Laufschrift (oder die Idee insgesamt) nicht schön, unsinnig oder wasauchimmer ist 😉 Das ganze ist nämlich nicht meine Idee...

    Gruß

    mtp



  • mtp schrieb:

    Gibt es da überhaupt eine Lösung für?

    Wie immer, meine Standardantwort bezüglich solcher Sachen: Nein, es gibt keine Lösung. Zumindest keine, die auch nur ansatzweise portabel oder verlässlich genug ist, als dass man sie verwenden sollte.

    Kann es sein, dass du nach etwas wie RSS suchst?
    Ist zwar keine Laufschrift, aber dafür portabel und verlässlich ...



  • Reyx schrieb:

    mtp schrieb:

    Gibt es da überhaupt eine Lösung für?

    Zumindest keine, die auch nur ansatzweise portabel oder verlässlich genug ist, als dass man sie verwenden sollte.

    Ich brauche in dem Fall auch nur eine Lösung, die auf dem IE läuft. Da das ganze nur in einer fest vorgegebenen Umgebung laufen soll (Windows mit IE 6.x.), also nicht im Internet, spielen andere Browser in dem Fall auch keine Rolle.

    Reyx schrieb:

    Kann es sein, dass du nach etwas wie RSS suchst?

    Eigentlich nicht. Das entscheidende ist, dass das ganze wie ein Bildschirmschoner funktionieren soll. Das heißt, sobald die Maus nicht mehr bewegt wird, fängt ein Countdown an. Nach dessen Ablauf, wird die ticker.html Seite aufgerufen und die wird wieder geschlossen, sobald die Maus wieder bewegt wird.



  • Nur eine spontane Idee: Du könntest einen Timer definieren, der nach 5 Minuten die andere Seite aufruft. Und diesen Timer setzt du anschließend bei jeder Mausbewegung (Stichwort: onmousemove) auf den Startwert zurück.



  • Ok. Danke. Das mit dem Countdown hab ich mittlerweile. Sieht dann (in JS) so aus:

    var myTimeout; 
    
    function CountDown ()
    {
         clearTimeout(myTimeout);
         myTimeout = setTimeout("window.open('ticker.html','FensterNeu')",30000);
    }
    

    Die Funktion CountDown wird im onMouseMove Ereignis einer Tabelle ausgeführt, welche den gesamten Fensterbereich abdeckt. Der Countdown zählt also nur zuende, wenn jemand 30 Sekunden lang die Maus nicht mehr bewegt.

    Nun hab ich aber doch noch ein Problem. In ticker.html habe ich definiert, das das Fenster geschlossen werden soll, sobald der User die Maus bewegt, also wenn das onMouseMove Ereignis eintritt. Das Problem ist: ticker.html wird so nur kurz geöffnet und dann gleich wieder geschlossen, ohne dass ich die Maus bewege. Scheinbar tritt also das OnMouseMove Ereignis gleich nach dem Laden von ticker.html auf 😕 Ist das normal?
    Was kann ich nun machen, damit ticker.html wirklich erst bei einer Mausbewegung wieder geschlossen wird.

    mtp


Anmelden zum Antworten