Gallery - Verzweifelt! loadMovie geht nur bei geringer Dateigröße

Ensign

Mitglied
Hi Leute!

Will eine Flash Gallery erstellen. Hab mir ein Muster (http://www.tutorio.com/tutorial/simple-flash-xml-photogallery) geholt und bin nun dabei es zu modifizieren, doch nun schon seit zwei Stunden ohne Fortschritte. Die Fotos die beim Muster dabei waren, können geladen werden (auch über meine XML Struktur), aber meine Fotos werden nur als Thumbs angezeigt jedcoh <i>nicht</i> über loadMovie dann vergrößert angezeigt.

Es hat anscheinend etwas mit der Dateigröße zu tun, denn wenn ich meine Bilder (die großen) auf unter 10 Kb verkleiner, dann werden sie angezeigt. Ich find das mördermäßig unlogisch, denn normalerweise sollte loadMovie doch auch größere Dateien packen! Woran liegt das? Im File sind keine Sperren einprogrammiert, ich konnt zumindest keine finden, da es sehr klein ist. Bin schon am Verzweifeln.

Will auch für zukünftigen Preloader die Kb berechen mit
PHP:
Math.ceil(this.getBytesTotal()/1024);
Aber auch das funktioniert nicht!

Mein Source-Code für die Gallery wäre:
PHP:
function loadData() {
theXML = new XML();
theXML.ignoreWhite = true;
System.useCodePage = true;
theXML.load("bilder.xml");
theXML.onLoad = function(status) {
if (status) {
gal_xml = theXML.childNodes[0].childNodes[0].childNodes[0].childNodes;
delete theXML;
genGal();
}
};
}
loadData();
function genGal() {
numimages = gal_xml.length;
spacing = 105;
info = _root.numimages;
for (i=1; i<numimages; i++) {
picHolder = gal_xml[i];
thumbHolder = thumbnails.createEmptyMovieClip("thumbnail"+i, i);
thumbHolder._y = (i-1)*spacing;
thumbLoader = thumbholder.createEmptyMovieClip("thumbnail_image", 0);
thumbLoader.loadMovie("gallery/files/thumbnails/" + picHolder.attributes.filename);
thumbHolder.title = picHolder.attributes.title;
thumbHolder.main = "gallery/files/" + picHolder.attributes.filename;
thumbHolder.onRelease = function() {
loader.loadMovie(this.main);
kb = Math.ceil(this.getBytesTotal()/1024);
title_txt.text = this.title;
kb_txt.text = kb + " kb";
};
}
}

Bitte dringend um Hilfe! Attache hier meine bisheringe Fotschritte.

############ EDIT #############
Hab File jetzt in Flash Mx Format gesichert und nicht in Mx 2004
##############################

Jetzt schon Danke,

Ensign
 

Anhänge

Zuletzt bearbeitet:
Hi,

Flash kann nur JPG-Dateien laden, die nicht mit mehreren Durchgängen gespeichert werden. Wenn Du mit Photoshop exportierst, deaktiviere das entsprechende Häkchen. An Der Flashdatei liegt das Problem nicht: Ich habe das Bild eben in PS neu gespeichert und es funktioniert.

Gruß
.
 
Der Script hat mir sehr geholfen!
ich möchte beim onRelease, ein getURL dazufügen.
Die url werte soll flash aus dem xml nehmen.

actionscript sieht so aus:

thumbHolder.onRelease = function() {
getURL ("picHolder.attributes.urlid");
loader.loadMovie(this.main);
kb = Math.ceil(this.getBytesTotal()/1024);
title_txt.text = this.title;
kb_txt.text = kb + " kb";
};

mein xml sieht so aus:

<?xml version="1.0" encoding="iso-8859-1" ?>
<root>
<galroot>
<galsec title="Meine Bilder" pic="meine_bilder_2004.jpg">
<gal x="50" y="50" depth="2" filename="baum.jpg" title="Hand" section="Meine Bilder" urlid="<A href="http://www.google.com"><![CDATA[]]></gal">http://www.google.com"><![CDATA[]]></gal>
<gal x="100" y="250" depth="4" filename="bug.jpg" title="Der Käfer geht... " section="Meine Bilder" urlid="<A href="http://www.cnn.com"><![CDATA[]]></gal">http://www.cnn.com"><![CDATA[]]></gal>
<gal x="100" y="250" depth="3" filename="striche.jpg" title="Striche gehen nicht!" section="Meine Bilder"><![CDATA[]]></gal>
</galsec>
</galroot>
</root>

ich bekomme aber ein browse fehlermeldung:
die datei konnte nicht geöffnet werden...
woran liegt es? syntax fehler?
 
Erst einmal schön, dass dir das Script hilft (auch wenn ich's nur verändert und mit anderem zusammengemischt habe...).

Aber nun zu deinem Problem: Aufs erste Hinschauen kann ich nur erkennen, dass es daran liegen mag, dass du bei deiner XML-Datei kein <A href= benötigst. Außerdem öffnest du zwei Anfrührungszeichen und schließt nur eines. Ich glaub überhaupt, dass XML Anführungsstriche nur mit einem / davor nimmt, wenn sie nicht zur XML-Datei selbst gehören. Probier's einmal so:
PHP:
<gal x="100" y="250" depth="4" filename="bug.jpg" title="Der Käfer geht... " section="Meine Bilder" urlid="http://www.cnn.com">
 
danke,

ich weiß nicht wie diese a href da gelandet, das ist natürlich quatsch! Das wollte ich nicht:-(
leider funktioniert es immer noch nicht...
 
so, jetzt geht es:) :

here ist mein xml:
PHP:
<?xml version="1.0" encoding="iso-8859-1" ?>
<root>
 <galroot>
  <galsec title="Meine Bilder" pic="meine_bilder_2004.jpg">
   <gal x= "50" y= "50" depth="2" filename="baum.jpg"    title="Hand"                 section="Meine Bilder"  urlid="<A href="http://www.jeannetteschuler.de/overview.php?nav=1"><![CDATA[]]></gal">http://www.jeannetteschuler.de/overview.php?nav=1"><![CDATA[]]></gal>
   <gal x="100" y="250" depth="4" filename="bug.jpg"     title="Der Käfer geht... "   section="Meine Bilder"  urlid="<A href="http://www.jeannetteschuler.de/overview.php?nav=2"><![CDATA[]]></gal">http://www.jeannetteschuler.de/overview.php?nav=2"><![CDATA[]]></gal>
   <gal x="100" y="250" depth="3" filename="striche.jpg" title="Striche gehen nicht!" section="Meine Bilder"  urlid="<A href="http://www.jeannetteschuler.de/overview.php?nav=3"><![CDATA[]]></gal">http://www.jeannetteschuler.de/overview.php?nav=3"><![CDATA[]]></gal>
 </galsec>
 </galroot>
</root>
 
und hier ist mein actionscript:
function loadData() {
 theXML = new XML();
 theXML.ignoreWhite = true;
 System.useCodePage = true;
 theXML.load("bilder.xml");
 theXML.onLoad = function(status) {
 if (status) {
  gal_xml = theXML.childNodes[0].childNodes[0].childNodes[0].childNodes;
  delete theXML;
  genGal();
 }
 };
}
loadData();
function genGal() {
numimages = gal_xml.length;
spacing = 105;
info = _root.numimages;
 for (i=1; i<numimages; i++) {
 picHolder = gal_xml[i];
 thumbHolder = thumbnails.createEmptyMovieClip("thumbnail"+i, picHolder.attributes.depth);
 thumbHolder._y = picHolder.attributes.y;
 thumbHolder._x = picHolder.attributes.x;
 thumbLoader = thumbholder.createEmptyMovieClip("thumbnail_image", 0);
 thumbLoader.loadMovie("gallery/files/thumbnails/" + picHolder.attributes.filename);
 thumbHolder.title = picHolder.attributes.title;
 thumbHolder.main = "gallery/files/" + picHolder.attributes.filename;
 thumbHolder.urli = picHolder.attributes.urlid;
 thumbHolder.onRelease = function() {
  //trace("test: "+picHolder.attributes.urlid);
  getURL (this.urli);
  //getURL("picHolder.attributes.urli")
  loader.loadMovie(this.main);
  kb = Math.ceil(this.getBytesTotal()/1024);
  title_txt.text = this.title;
  kb_txt.text = kb + " kb";
 };
 }
}
vielen dank!
 
Zurück