Copkiller: Array + Reload

Hallo Leute,
benötige eure hilfe bezüglich einem Array und einem reload-script,

ich habe folgendes vor:

ich möchte ein Array mit Zahlen im Sekundentakt festlegen,

das reload-script soll dann aus diesem Array irgendeine Zahl wählen, wenn dann diese Zahl abgelaufen ist, soll es sich eine neue (andere) zahl aus dem Array holen, und immer so weiter... also zufälliches auswählen. Kurzum ich möchte ein Reload-Script mit dynamischem statt statischem Sekundentakt

Das Reload-script sieht folgender aus:

======================================================================
var countdown = "1382";

function doCount()
{
if (countdown > 0){
    countdown--
}
else{
   location.reload();
}

var s = countdown;
var h = Math.floor(s/3600);
var m = Math.floor((s - (h * 3600))/60);
s = (s-(h*3600))%60

window.document.title=h+":"+m+":"+s+ " bis zum nächsten Reload"

window.setTimeout('doCount()',1000)
}

doCount();

hoffe ihr könnt mir da helfen. Thx a lot.

  1. Hi,

    erstmal eine Frage...

    var countdown = "1382";

    Warum steht die Zahl in einem String?

    Also, wenn ich das richtig verstanden habe, steht in dieser Variablen die Zeit in Millisekunden bis zum nächsten Reload. Diese Zeitvariable kommt aber beim Reload noch gar nicht zum Einsatz:

    window.setTimeout('doCount()',1000)

    (Hier fehlt im Übrigen das Semikolon am Ende)

    Als nächstes musst Du Dir überlegen, wie Du die Variable durch einen zufällig ausgewählten Arraywert ersetzt.
    Dazu schaust Du Dir das hier mal an: http://selfhtml.teamone.de/javascript/objekte/math.htm#random

    Naja, damit kannst Du ja erstmal weiterbasteln. ;-)

    VG Simon

    1. Hi,
      das Reload-Script funzt so wie es gepostet hab,
      die Zeit (n Sekunden nich Milliesec.), weis ich jetzt auch nicht warum  das als String definiert ist.

      Wie meinst du das, das diese Varibale nicht zum Einsatz kommt??? Anhand dieses Wertes wird in ein Countdown im 00.00.00.-Format geniert das dann abläuft und bei "0" wieder neu lädt.

      Werd mich dann mal mit deinen Tipp beschäftigen.
      Danke

      1. Hi!

        Wie meinst du das, das diese Varibale nicht zum Einsatz kommt??? Anhand dieses Wertes wird in ein Countdown im 00.00.00.-Format geniert das dann abläuft und bei "0" wieder neu lädt.

        Oh, Du hast Recht. Da habe ich das Script leicht missverstanden. ;-)

        Naja gut, dann musst Du jetzt quasi nur noch die Countdown-Variable am Anfang zufällig initialisieren, der Rest kann ja so stehen bleiben.

        VG Simon

        1. Hi,
          alles klar :-)

          leider komme ich mit deinem Tipp auch nicht weiter...

          1. Hi,

            ich schreib Dir mal hin, was Du austauschen musst.

            var countdown = "1382";

            wird ersetzt durch z.B.:

            var countdowns = new Array(1382,1471,1426);
            var countdown = countdowns[Math.round((countdowns.length-1)*Math.random())];

            Zuerst erzeugst Du also ein Array mit allen möglichen Zeitwerten.
            Dann wählst Du einen Wert daraus aus, indem Du die Länge des Arrays (-1) mit einer Zufallszahl zwischen 0 und 1 multiplizierst und das Ergebnis gerundet als Index benutzt.

            VG Simon

            1. Hi,
              wow diese Syntax allein nich hinbekommen. Das Script funzt super.
              Dickes Danke an dich Simon :))
              MfG Copkiller