Willkommen auf dem Portal für Mediengestalter
|
|
Autor |
Nachricht |
Thomas126
Threadersteller
Dabei seit: 21.03.2009
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Sa 28.11.2009 12:35
Titel [Hifle] bei Preloader |
|
|
Hallo Leute,
Ich bräuchte wirklich dringend Hilfe beim erstellen eines Preloaders...
Vorweg, ich bin ein kompletter Neuling im Flashbereich!
Auf meiner Website befinden sich immer sog. "Header". Auf der Homeseite würde ich aber am liebsten ein Flashheader haben. Damit meine ich, dass es einen "Loader" geben soll, der dann aus xml-Dateien die neu zu ladenen richtigen swf-Dateien nach der Reihe abspielt, und natürlich soll es auch einen Next und Back Button geben.
Also ich bin vorallem auf dieses Flashheader gestoßen als ich nach langem mal wieder http://worldofwarcraft.com angesteuert habe. Dort ist nämlich als Beispiel ein Flashheader zu sehen, der auch mit Hilfe von XML immer wieder externe Flashclips lädt.
Ich selbst habe mich auch schon daran gesetzt, jedoch habe ich nur einen Preloader geschafft, der nach dem Laden an die angegegbene Flashdatei abgibt... Desweiteren wollte ich in meinen Preloader, genau wie bei worldofwarcraft.com unten links, wenn er lädt eine fertiges Gif einfügen. Doch das hat selbst bei meinem Flashpreloader nicht geklappt, da mein Preloader nur mit einem Bild läuft und dann irgendwie die gif Datei nicht dort reinpasst, oder so :S
Hier mal der Code für den Preloader:
Zitat: | var loader:Loader = new Loader();
var getFile:URLRequest = new URLRequest("header_home2.swf");
var preloader:Preloader = new Preloader();
loader.load(getFile);
loader.contentLoaderInfo.addEventListener(Event.OPEN, showPreloader);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, showProgress);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, showFile);
function showPreloader(event:Event):void {
addChild(preloader);
preloader.x = stage.stageWidth/2;
preloader.y = stage.stageHeight/2;
}
function showProgress(event:ProgressEvent):void {
var percentLoaded:Number = event.bytesLoaded/event.bytesTotal;
preloader.info_txt.text = Math.round(percentLoaded *100) + "%";
preloader.bar_mc.width = 100*percentLoaded;
}
function showFile(event:Event):void {
removeChild(preloader);
addChild(loader);
} |
Also soweit funktioniert der auch, aber wie gesagt, ich hätte gerne genau so einen wie bei worldofwarcraft.com...
Könntet ihr mir vielleicht weiterhelfen?
mfg. Thomas126[/code]
|
|
|
|
|
phihochzwei
Moderator
Dabei seit: 08.06.2006
Ort: Mülheim an der Ruhr
Alter: 46
Geschlecht:
|
Verfasst Sa 28.11.2009 14:06
Titel
|
|
|
Ich hab gerade KEINE AHNUNG wovon du sprichst. GIF ??? Einfügen ??? Häh ??? Nochmal ganz von vorne, ganz langsam und ganz ruhig bitte.
|
|
|
|
|
Anzeige
|
|
|
Thomas126
Threadersteller
Dabei seit: 21.03.2009
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Sa 28.11.2009 15:20
Titel
|
|
|
Ja sry etwas durcheinander ausgedrückt...
Also was ich eigentlich gerne möchte ist ein Preloader wie bei Worldofwarcraft.de der durch xml auslese, die Movieclips nacheinander lädt und abspielt.
|
|
|
|
|
Thomas126
Threadersteller
Dabei seit: 21.03.2009
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 29.11.2009 12:02
Titel
|
|
|
So ich habe mich jetzt erstmal mit dem Flash Preloader von WoW beschäftigt...
http://www.worldofwarcraft.com/new-hp/flash/loader2.swf
Dazu habe ich dann auch den Actionscriptcode für den Preloader dieser Datei gefunden, jedoch ist mein Problem, das mein Flashpreloader ein andere Größe hat (745 x 150) als die Orginal Datei, wenn ich dies versuche in Flash anzupassen, ziehen sich die Bilder in die Länge, dann ersetzte ich sie durch meine eigenen, jedoch dann werden die Bilder immer wieder wiederholt dargestellt und passen auch nicht, obwohl sie 745 x 150 Maße haben
Ich hoffe der Text oben ist verständlicher..
Hier mal der Actionscriptcode:
Zitat: |
function loadXML(loaded)
{
if (loaded)
{
xmlok = true;
banners = this.firstChild.firstChild.childNodes;
x = 0;
while (x < banners.length)
{
btarg = banners[x].attributes.target ? banners[x].attributes.targ : "_self";
bannarray.push([banners[x].attributes.title, banners[x].attributes.link, btarg]);
++x;
}
txt_next = this.firstChild.childNodes[1].attributes.next;
txt_back = this.firstChild.childNodes[1].attributes.back;
wait = owait = this.firstChild.childNodes[1].attributes.waittime;
nextvideo();
_root.onEnterFrame = function ()
{
if (--wait < 0)
{
nextvideo();
wait = owait;
}
}
;
return;
}
trace("Dimensional Vortex ate your datas, you are eaten by a grue");
}
function fadeto(targ, mod, maxval)
{
if (!mod)
{
mod = 3;
}
if (!maxval && maxval != 0)
{
maxval = 100;
}
if (Math.abs(maxval - targ._alpha) > 1)
{
targ._alpha = targ._alpha + (maxval - targ._alpha) / mod;
if (targ._alpha > 0)
{
targ._visible = true;
}
return;
}
targ._alpha = maxval;
if (targ._alpha <= 0 && !targ.alwaysvisible)
{
targ._visible = false;
}
delete targ.onEnterFrame;
}
function nextvideo(prev)
{
if (loadok)
{
wait = owait;
if (prev)
{
--curclip;
if (curclip < 0)
{
curclip = bannarray.length - 1;
}
}
else
{
if (!curclip && curclip != 0)
{
curclip = 0;
}
else
{
++curclip;
if (curclip == bannarray.length)
{
curclip = 0;
}
}
}
targ = ev.b_loader;
_root.loadok = false;
c_banner = targ["banner_" + curclip];
if (c_banner)
{
c_banner.swapDepths(targ.getNextHighestDepth());
c_banner.banner.loadMovie(bannarray[curclip][0]);
c_banner._alpha = 0;
c_banner._visible = true;
c_banner.prevclip = prevclip;
clink = bannarray[curclip][1];
c_banner.onEnterFrame = function ()
{
if (this.banner.getBytesLoaded() >= this.banner.getBytesTotal() && this.banner.getBytesTotal() > 0)
{
this._parent["banner_" + this.prevclip].onEnterFrame = function ()
{
fadeto(this, "", 0);
}
;
this.onEnterFrame = function ()
{
this._alpha = this._alpha + (100 - this._alpha) / 5;
if (100 - this._alpha < 5)
{
this._alpha = 100;
if (this._visible)
{
this._parent["banner_" + this.prevclip]._visible = false;
}
_root.loadok = true;
delete this.onEnterFrame;
}
}
;
}
}
;
}
else
{
ev.clock._visible = true;
nclip = targ.createEmptyMovieClip("banner_" + curclip, targ.getNextHighestDepth());
nclip.createEmptyMovieClip("banner", nclip.getNextHighestDepth()).loadMovie(bannarray[curclip][0]);
nclip._alpha = 0;
nclip.prevclip = prevclip;
nclip.num = curclip;
clink = bannarray[curclip][1];
ctarg = bannarray[curclip][2];
nclip.onEnterFrame = function ()
{
if (this.banner.getBytesLoaded() >= this.banner.getBytesTotal() && this.banner.getBytesTotal() > 0)
{
ev.clock._visible = false;
this._parent["banner_" + this.prevclip].onEnterFrame = function ()
{
fadeto(this, "", 0);
}
;
this.onEnterFrame = function ()
{
this._alpha = this._alpha + (100 - this._alpha) / 5;
if (100 - this._alpha < 5)
{
this._alpha = 100;
if (this._visible)
{
this._parent["banner_" + this.prevclip]._visible = false;
}
_root.loadok = true;
delete this.onEnterFrame;
}
}
;
}
}
;
nclip.forceSmoothing = true;
}
prevclip = curclip;
}
}
Stage.showMenu = false;
Stage.scaleMode = "noScale";
_quality = "BEST";
bannarray = new Array();
var txt_next;
var txt_back;
var xmlok;
var wait;
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
if (!xmlname)
{
xmlname = "news.xmls";
}
xmlname = xmlname + ("?falth=" + (new Date()).getTime());
xmlData.load(xmlname);
loadok = true;
var curclip;
var prevclip;[/code] |
Ich hoffe ihr versteht den Aktionscripttext, und könnt ihn mir näher bringen bzw. erläutern oder sogar irgendwie anpassen :S
mfg. Thomas
|
|
|
|
|
|
|
|
Ähnliche Themen |
preloader -->
Preloader für *.swf
preloader in flash
[Flash] Preloader
Probleme mit Preloader
Preloader für Bilderwechsler
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|