tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
1
ZUGRIFFE
346
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    gygra gygra ist offline Mitglied Silber
    Registriert seit
    Aug 2006
    Beiträge
    60
    Guten Tach,

    ich wurstel mich gerade durch eine Anim, die Bilder aus einem externen Ordner laden soll. Das tut sie auch soweit (danke, Tobias ). Der Knackpunkt ist nun, dass die Bilder in alphabetischer, bzw numerischer Reihenfolge kommen, was sie auch tun sollen, aber nicht immer bei xyz1 beginnend, sondern eben zufällig, also z.B.: xyz7, xyz8,xyz9,xyz1,xyz2,... .
    Auf diese Weise soll etwas Abwechslung in die Sache kommen, bei jedem aktualisieren, oder Neuaufrufen der Seite würde die Anim anders beginnen, you know?

    Aber wie und wo baut man da jetzt den Random ein ?

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    
    var images = [];
    var path = "images/";
    for (var i = 1; i < 7; i++) {
        images.push(path.concat("img", i, ".jpg"));
    }//Bilder im Ordner Images dürfen nicht mit 001.jpg bezeichnet sein. Fortlaufende Nummerierung bei 1 beginnend.
     
     
    var img = new Array(); // Array für die Bild-MCs
     
    var loaded = 0; // zeigt an, wie viele Bilder schon geladen wurden
     
    var dec = 20; // Abbremsungsfaktor für das Überblenden
     
    var currentImage = -1; // aktuelles Bild
     
    var interval = 3000; // Zeitspanne zwischen den Bildern (hier: 3 Sekunden)
     
    var iv = 0; // Intervall-Handler für setIntervall (Pause zwischen den Bildern)
     
    var stime = 0; // Zeit nach dem Einblenden merken
     
    var mcl = new MovieClipLoader(); // MovieClipLoader um die Bilder zu laden
     
    mcl.onLoadInit = function() { // wird aufgerufen, wenn ein Bild geladen wurde
        clearInterval(iv); // Intervall löschen
        if (getTimer() - stime >= interval) { // wenn Intervallzeit schon abgelaufen:
            showNext(); // .. direkt nächstes Bild anzeigen
        } else { // ansonsten:
            iv = setInterval(showNext, interval - (getTimer() - stime)); // Bild nach Restzeitspanne anzeigen
        }
    }
     
     
    for (var i= 0; i<images.length; i++) {
        img[i] = this.createEmptyMovieClip("img" + i, i); // Für jedes Bild einen MC erstellen
        var ct = img[i].createEmptyMovieClip("ct", 1); // ... und dort einen weiteren leeren MC hineinpacken
        img[i]._src = images[i];
        img[i]._visible = false; // Bild erstmal ausblenden
        img[i]._alpha = 0; // und Alphawert auf 0 sethen
    }
     
    loadNext();
     
    function loadNext() { // nächstes Bild vorladen
        var d = currentImage + 1;
        if (d > images.length - 1) d = 0;
        mcl.loadClip(img[d]._src, img[d].ct);
    }
     
    function showNext() { // nächstes Bild anzeigen
        clearInterval(iv);
        img[currentImage].fade(0, dec);
        currentImage ++;
        if (currentImage > images.length - 1) currentImage = 0;
        img[currentImage].swapDepths(this.getNextHighestDepth());
        img[currentImage]._x = Stage.width / 2 - img[currentImage]._width / 2;
        img[currentImage]._y = Stage.height / 2 - img[currentImage]._height / 2;
        img[currentImage].fade(100, dec);
        stime = getTimer(); // aktuelle Zeit merken
        loadNext(); // und gleich das nächste Bild vorladen
    }
     
    MovieClip.prototype.fade = function(d, s) {
        if (d != 0) this._visible = true;
        this.onEnterFrame = function() {
            this._alpha += (d - this._alpha) / s;
            if (Math.abs(d - this._alpha) < 1) {
                delete this.onEnterFrame;
                this._alpha = d;
                if (d == 0) this._visible = false;
            }
        }
    }
     

  2. #2
    Registriert seit
    Mar 2004
    Ort
    Basisrealität
    Beiträge
    12.118
    Blog-Einträge
    7
    Hi,

    hier:
    Code :
    1
    
    var currentImage = int(Math.random() * 7) - 1;

    Gruß
    .
     

Ähnliche Themen

  1. Externes Bild in Imageflow
    Von louS im Forum PHP
    Antworten: 2
    Letzter Beitrag: 06.10.09, 12:49
  2. externes, animiertes GIF laden und zeigen?
    Von Grille im Forum Flash Plattform
    Antworten: 2
    Letzter Beitrag: 24.08.07, 16:19
  3. Externes swf laden und in einem bestimmten Frame starten
    Von Djingeringe im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 03.05.05, 17:26
  4. [mx] Bild durch externes Bild ersetzen
    Von abaerli im Forum Flash Plattform
    Antworten: 2
    Letzter Beitrag: 28.01.05, 16:09
  5. ein externes rollover-bild erstellen
    Von A-lux im Forum HTML & XHTML
    Antworten: 4
    Letzter Beitrag: 21.12.04, 16:40