• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Problem beim Parsen von XML-Code

iceman_fx

New member
Hallo Leute,

ich habe Probleme beim Parsen von ein bisschen XML-Code.
jQuery möchte ich dazu nicht nutzen, da ich es ohne zusätzlichen Bibliotheken benötige.

XML-Code:
Code:
		<view hlookat="50.916" vlookat="0" fovtype="MFOV" fov="117.021" maxpixelzoom="1.5" fovmin="70" fovmax="140" limitview="auto"/>

		<preview url="panorama/panos/zimmer.tiles/preview.jpg"/>
		<image>
			<cube url="panorama/panos/zimmer.tiles/pano_%s.jpg"/>
			<cube url="panorama/panos/zimmer.tiles/mobile/pano_%s.jpg" devices="mobile"/>
		</image>

Aus dem oben stehenden XML-Code möchte ich eigentlich nur innerhalb der beiden <cube /> Zeilen die url-Attribute auselesen.
Aber bisher gelingt es mir einfach nicht und es wird nichts zurückgeliefert.

Mein bisheriger Versuch:
Code:
function getUrl(cnt)
{	if (cnt != "undefined" && cnt != "") {

		if (window.DOMParser) { tmp = new DOMParser(); xml = tmp.parseFromString(cnt, "text/xml"); }
		else { xml = new ActiveXObject("Microsoft.XMLDOM"); xml.async = "false"; xml.loadXML(cnt); }
		
		console.log(cnt);
		console.log("Anzahl cube: "+ xml.getElementsByTagName("cube").length);				//liefert bei mir 0 zurück
					
		for (i=0; i<xml.getElementsByTagName("cube").length; i++)
		{	url 	= xml.getElementsByTagName("cube")[i].getAttribute("url");
			device 	=  xml.getElementsByTagName("cube")[i].getAttribute("devices");
		
			console.log("URL: ", url);
			console.log("DEVICE: ", device);
		}
	}
}

In der Console erhalte ich aber keine Ausgaben, da die Anzahl der vorkommenden Cube-Knoten immer 0 ist.

Hat jemand eine Idee, was an meinem Skript falsch ist?
 
Dann sollte aber etwas dazu in der Fehlerkonsole stehen...

@iceman_fx: in welchem Browser testest du denn? Version?

PS: globale Variablen sind nicht gut und solltst du (v.a. bei so generellen Namen) nicht verwenden. Ich sehe hier auch keinerlei Grund, die Variablen nicht lokal zu machen.
 
Zurück
Oben