[GastForen Archiv Adobe Flash & ActionScript [Flash 8] - SlideShow

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Archiv - Archivierte Foren
Themen
Beiträge
Moderatoren
Letzter Beitrag

[Flash 8] - SlideShow

ssh
Beiträge gesamt: 37

19. Dez 2006, 17:11
Beitrag # 1 von 3
Bewertung:
(1414 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Leute,

ich habe hier eine kleine SlideShow http://www.acioo.com/...eshow/slideshow.html

Gibt es die Möglichkeit das sich die Flashdatei die Bilder zufällig aus einem Ordner holt? Denn Momentan habe ich das Problem, dass Flash die Bilder immer nur in der Reihenfolge wie sie in der XML-Datei angegeben ist abspielt.

Vielleicht kennt jemand ein Script das nicht allzu kompliziert ist …

Viele Grüße Sam.


Code
MovieClip.prototype.alpha = function (vel, to) 
{
var _loc1 = this;
_loc1.vel = vel;
_loc1.to = to;
_loc1.alpha_init = _loc1._alpha;
_loc1.onEnterFrame = function ()
{
var _loc1 = this;
updateAfterEvent();
if (_loc1.to != undefined && _loc1.vel != undefined)
{
if (_loc1.to > _loc1.alpha_init)
{
if (_loc1._alpha <= 100)
{
_loc1._alpha = _loc1._alpha + _loc1.vel;
}
else
{
_loc1.onEnterFrame = null;
} // end else if
}
else if (_loc1._alpha > _loc1.to)
{
_loc1._alpha = _loc1._alpha - _loc1.vel;
}
else
{
_loc1.onEnterFrame = null;
} // end else if
return;
} // end if
};
};
function parse(success)
{
var _loc3 = this;
if (success)
{
imageArray = new Array();
var root = _loc3.firstChild;
_global.numPause = Number(_loc3.firstChild.attributes.timer * 1000);
_global.order = _loc3.firstChild.attributes.order;
_global.looping = _loc3.firstChild.attributes.looping;
_global.fadetime = Number(_loc3.firstChild.attributes.fadetime);
var _loc1 = root.lastChild;
for (var _loc2 = 0; _loc1.nodeName != null; ++_loc2)
{
imageData = new Object();
imageData.path = _loc1.attributes.path;
imageArray[_loc2] = imageData;
_loc1 = _loc1.previousSibling;
} // end of for
imageArray.reverse();
imageGen(imageArray);
return;
} // end if
} // End of the function
function swapPlace(clip, num)
{
eval(clip).swapDepths(eval("loader" + num + "_mc"));
} // End of the function
function loadImages(data, num)
{
if (i == undefined || i == 2)
{
i = 2;
createLoader(i, data, num);
i = 1;
}
else if (i == 1)
{
createLoader(i, data, num);
i = 2;
} // end else if
} // End of the function
function createLoader(i, data, num)
{
thisLoader = eval("loader" + i + "_mc");
thisLoader._alpha = 0;
thisLoader.loadMovie(data[num].path);
watcher_mc.onEnterFrame = function ()
{
var _loc2 = thisLoader.getBytesLoaded();
var _loc1 = thisLoader.getBytesTotal();
if (isNaN(_loc1) || _loc1 < 4)
{
return;
} // end if
if (_loc2 / _loc1 >= 1)
{
swapPlace("loader2_mc", 1);
thisLoader.alpha(_global.fadeTime, 100);
timerInterval = setInterval(imageGen, _global.numPause, data);
delete this.onEnterFrame;
} // end if
};
} // End of the function
function imageGen(data)
{
var _loc1 = data;
var _loc2 = _global;
if (_loc2.order == "random")
{
while (randomNum == randomNumLast)
{
randomNum = Math.floor(Math.random() * _loc1.length);
} // end while
loadImages(_loc1, randomNum);
randomNumLast = randomNum;
}
else if (_loc2.order == "sequential")
{
if (p == undefined || p == _loc1.length && _loc2.looping == "yes")
{
p = 0;

} // end if
loadImages(_loc1, p);
++p;

} // end else if
clearInterval(timerInterval);
} // End of the function
Stage.scaleMode = "noScale";
Stage.align = "LT";
var randomNum = 0;
var randomNumLast = 0;
this.createEmptyMovieClip("loader1_mc", 2, {_x: 0, _y: 0});
this.createEmptyMovieClip("loader2_mc", 1, {_x: 0, _y: 0});
this.createEmptyMovieClip("watcher_mc", 100);
images_xml = new XML();
images_xml.ignoreWhite = true;
images_xml.onLoad = parse;
images_xml.load("images.xml");
stop ();

X

[Flash 8] - SlideShow

ganesh
Beiträge gesamt: 1981

20. Dez 2006, 15:16
Beitrag # 2 von 3
Beitrag ID: #267815
Bewertung:
(1399 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ja. Entweder du erstellst das XML serverseitig via PHP, oder änderst innerhalb von Flash die Reihenfolge der Bilder.

Letztlich läuft es darauf hinaus, dass du irgendwann einen Array hast, und diesen durchschütteln musst, um die Reihenfolge zu ändern.

PHP:
http://ch2.php.net/...function.shuffle.php

AS:
http://www.sephiroth.it/proto_detail.php?id=149


als Antwort auf: [#267644]

[Flash 8] - SlideShow

ssh
Beiträge gesamt: 37

20. Dez 2006, 15:26
Beitrag # 3 von 3
Beitrag ID: #267822
Bewertung:
(1396 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke für die Antwort! Es läuft mittlerweile.


als Antwort auf: [#267815]

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
05.02.2021 - 05.11.2021

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Freitag, 05. Feb. 2021, 13.00 Uhr - Freitag, 05. Nov. 2021, 17.00 Uhr

Lehrgang

Bilden Sie sich zum zertifizierten Publishing-Multimedia-Profi aus. Neben Fotografie und Video befassen Sie sich mit der Medienproduktion, digitalen Publikationen und dem Webdesign für Desktop- und mobile Endgeräte.

Preis: CHF 10'500.-
Dauer: 30 Tage (ca. 210 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt

Ja

Organisator: Digicomp Academy AG

Kontaktinformation: Kundenberater-Team, E-Mailkundenberatung AT digicomp DOT ch

digicomp.ch/d/9PM

Veranstaltungen
05.03.2021 - 30.04.2021

Digicomp Academy AG, Zürich oder virtuell
Freitag, 05. März 2021, 13.00 Uhr - Freitag, 30. Apr. 2021, 17.00 Uhr

Lehrgang

Im berufsbegleitenden Web Publisher Lehrgang vertiefen Sie Ihr Wissen rund um das Thema Screendesign und die Umsetzung von Websites. Wir befähigen Sie dazu selbständig und professionell Ihren Webauftritt zu planen und in die Realität umzusetzen.

Preis: CHF 3'250.–
Dauer: 8.5 Tage - Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt.

Ja

Organisator: Digicomp Academy AG

Kontaktinformation: Kundenberater-Team, E-Mailkundenberatung AT digicomp DOT ch

digicomp.ch/d/9PWEB