Hi, ich möchte auf meiner Seite einen Player einbauen, der Name der Lieder und der Pfad liegen in einer XML Datei.
XML Datei:
Um den Pfad und das Abspielen kümmert sich Flash. Nun möchte ich mit Javascript den namen anzeigen lassen (erstmal testweise in nem Alert Fenster).
Das ist das komplette Javascript:
Ich rufe die sendRequest() Funktion in der Hauptseite in einem Frame auf. Die Pfade stimmen 100%ig. Nun weiß ich nicht mehr weiter Er gibt mir auch keine einzige meldung aus und ich hab auch schon im DOM-Inspector des Firefox nachgesehn.
Vllt seht ihr einen Fehler. Vielen dank im Vorraus
Dulla_Po
XML Datei:
Code:
<?xml version="1.0" encoding="iso-8859-1"?> <songs> <song name="Name" pfad="dateipfad" /> </songs>
Das ist das komplette Javascript:
PHP-Code:
//globale Variablendeklaration
var i,songs = 0;
//Funktionen
//XMLHttpRequest erhalten
function getXMLHttpRequest(){
var httpReq = null;
if (window.XMLHttpRequest){
httpReq = new XMLHttpRequest();
}
else if (typeof ActiveXObject !="undefined"){
httpReq = new ActiveXObject("Microsoft.XMLHTTP");
}
return httpReq;
}
//Request absenden evtl. Fehler ausgeben
function sendRequest(){
req = getXMLHttpRequest();
if (req){
req.onreadystatechange = auswertung();
req.open("get","www.meinedomain.de/page/Sounds.xml",true);
req.setRequestHeader("Content-Type","text/xml");
req.send(null);
}
else{
alert("Player konnte nicht erstellt werden");
}
}
//XML Inhalt entgegennehmen und auswerten
function auswertung(){
if(req.readyState == 4){
if(req.status == 200){
var xml = req.responseText;
var xmlDOM;
if (typeof ActiveXObject != "undefined"){
xmlDOM = new ActiveXObject("Microsoft.XmlDom");
xmlDOM.loadXML(xml);
}
else{
var parser = new DOMParser();
xmlDOM = parser.parseFromString(xml, "text/xml");
}
for (var iNode = 0; iNode < xmlDOM.firstChild.childNodes.length; iNode++) {
songs++;
}
schleife();
}
else{
alert("XML Datei wurde nicht gefunden");
}
}
}
//Nächstes Lied und Voriges Lied Buttons
function nextprev (inhalt){
if (inhalt == ">"){
if (i == songs - 1){
parent.frame2.location.href="meinedomain.de/page/page/music.php?i=0";
}
else{
i++;
parent.frame2.location.href="www.meinedomain.de/page/page/music.php?i=" + i;
}
}
if (inhalt == "<"){
if (i == 0){
parent.frame2.location.href="www.meinedomain.de/page/page/music.php?i=" + songs - 1;
}
else{
i--;
parent.frame2.location.href="www.meinedomain.de/page/page/music.php?i=" + i;
}
}
}
//Die ständig durchlaufende aktualisierungsschleife
function schleife(){
var splitt = parent.frame2.location.href.split("=");
i = splitt[1];
if (i > songs - 1){
parent.frame2.location.href="www.meinedomain.de/page/page/music.php?i=0";
i = "0";
}
var Element = xmlDOM.getElementsByTagName("song")[Number(i)];
var Name = Element.getAttribute("Name");
alert(Name);
setTimeout("schleife()",1000);
}
Vllt seht ihr einen Fehler. Vielen dank im Vorraus
Dulla_Po
Kommentar