AW: XML wird nicht geladen
Hallo!
Entschuldige die späte Antwort, jedoch hatte ich leider bis jetzt keine Zeit zurück zu schreiben.
Ich habe es nun anders gelöst. Ich habe den Musikplayer direkt in meiner Hauptflash-Datei erstellt. Die Songs werden weiterhin aus einer XML-Datei geladen (funktioniert jetzt auch problemlos beim Testen der swf.)
Mein Problem ist nun aber ein anderes. Sobald ich die swf-Datei in HTML einbette, erscheint zwar mein Musikplayer, jedoch können die Songs nicht geladen werden. Muss ich die Songs also direkt im Flash importieren? Wieso funktioniert es beim Testen, aber nicht auf meiner HTML Seite?
Hier mein Code (gleich eine weitere Frage: Wie stelle ich den Code so wie alle anderen User es auch machen hinein?)
_root.ipod_mc.onPress = function() {
attachMovie("player_mc","imported_player_mc",1);
imported_player_mc.swapDepths(_root.getNextHighestDepth());
imported_player_mc._x = 44.1;
imported_player_mc._y = 124.15;
// playlist
// neues XML Objekt
songlist = new XML();
// leerzeichen ignorieren
songlist.ignoreWhite = true;
// funktionsaufruf wenn daten geladen
songlist.onLoad = function(loading) {
if (loading) {
//arrays erstellen
_global.songnamen = [];
_global.songfiles = [];
for (var i = 0; i < songlist.firstChild.childNodes.length; i++) {
// für alle elemente im XML
// attribute auslesen und in arrays packen
_global.songnamen = songlist.firstChild.childNodes.attributes.name;
_global.songfiles = songlist.firstChild.childNodes.attributes.file;
// überprüfen, ob daten richtig übergeben
trace(songnamen + " " + songfiles);
}
_root.createEmptyMovieClip("sound_mc",1);
_root.sound_mc.sound_obj = new Sound();
// zufaellige songauswahl
_global.song_nr = random(songfiles.length);
// zufaelligen song starten
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);
} else {
// falls fehler beim lalden
imported_player_mc.songname_mc.songname_txt.text = "Fehler beim Laden";
}
};
MovieClip.prototype.song_starten = function(file, name) {
// true für streaming = an
this.sound_obj.loadSound(file,true);
//das onEnterFrame ereignis
this.onEnterFrame = function()
{
// songstart
if (this.sound_obj.position > 0) {
// das onEnterFrame ereignis löschen
delete this.onEnterFrame;
// name wurde als parameter mit übergeben
_root.imported_player_mc.songname_mc.songname_txt.text = name;
} else {
_root.imported_player_mc.songname_mc.songname_txt.text = "loading...";
}
};
// sound fertig abgespielt
this.sound_obj.onSoundComplete = function() {
// nächsten song auswählen (-1 da songnr bei 0 anfaengt)
(song_nr == songfiles.length - 1) ? _global.song_nr = 0 : _global.song_nr++;
// naechsten song starten
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);
};
};
// tastenfunktionen
// play
imported_player_mc.play_btn.onRelease = function() {
// aktuell ausgewaehlten song starten
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);
};
// stop
imported_player_mc.stop_btn.onRelease = function() {
// wiedergabe stoppen
_root.sound_mc.sound_obj.stop();
};
// next
imported_player_mc.next_btn.onRelease = function() {
// naechsten song auswaehlen (-1 da song_nr bei 0 anfäng)
(song_nr == songfiles.length - 1) ? _global.song_nr = 0 : _global.song_nr++;
// naechsten song starten
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);
};
// prev
// vorherigen song auswaehlen (song_nr--)
// ausser der erste wurde gerade abgespielt
imported_player_mc.prev_btn.onRelease = function() {
(song_nr == 0) ? _global.song_nr = songfiles.length - 1 : _global.song_nr--;
// vorherigen song starten
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);
};
// XML laden
songlist.load("songlist.xml");
// player schliessen
imported_player_mc.close_mc.onPress = function() {
// wiedergabe stoppen
_root.sound_mc.sound_obj.stop();
_root.imported_player_mc.removeMovieClip();
};
};