То, что я пытаюсь сделать с моим скриптом Greasemonkey:
для чтения какого-нибудь удаленного XML-документа;
для преобразования его в объект XML;
, а затем используйте XPath, чтобы получить элементы внутри него.
Метод getElementsByTagName (TagName) прекрасно работает с моим XML-объектом, но оценивает («выражение XPath») - нет.Какие-либо предложения?Смотрите код ниже:
GM_xmlhttpRequest({
method: "GET",
url: "http://www.someserver.com/atom.xml",
onload: function(response) {
if (!response.responseXML) {
var xmlDoc = new DOMParser().parseFromString(response.responseText, "application/xml");
}
// this section works fine and returns the data of the first <entry>..</entry>
var snapEntries = xmlDoc.getElementsByTagName("entry");
alert (snapEntries[0].data);
// this section doesn't work for unknown reason and returns nothing
var snapEntriesXpath = xmlDoc.evaluate("//entry", xmlDoc, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
alert (snapEntriesXpath.snapshotItem(0).data);
}
});