Hallo,
typeof(foo.responseXML.getElementsByTagName) ist leider ebenfalls 'unknown'.
Bei mir auch, obwohl getElementsByTagName trotzdem funktioniert. Und alert(foo.responseXML.getElementsByTagName) bringt den Fehler "Falsche Anzahl von Argumenten...", versucht also die Funktion auszuführen ;-),
Offensichtlich hat Microsoft sich nicht die Mühe gemacht, um die Msxml2-Objekte die üblichen Script-Wrapper drumzulegen. Man greift hier offensichtlich direkt auf [native code] zu. Anders ist das folgende Verhalten bald nicht zu erklären:
try {
alert(document.getElementsByTagName);
} catch(e) {
alert(e.description);
}
try {
for (member in document) document.write(member + "<br/>");
} catch(e) {
alert(e.description);
}
//versus
var objDoc = new ActiveXObject("Msxml2.DOMDocument.3.0");
try {
alert(objDoc.getElementsByTagName);
} catch(e) {
alert(e.description);
}
try {
for (member in objDoc) document.write(member + "<br/>");
} catch(e) {
alert(e.description);
}
Damit entfallen natürlich fast alle üblichen Methoden des JavaScript-debugging, leider.
Interessant wäre zu wissen, ob jemand schon weitergehende andere Konzepte zum Debuggen von Code mit MSXML2-Objekten entwickelt hat.
viele Grüße
Axel