(23:15追記)前振りを追加。
普通の一般的なXMLHttpRequestでは、受信したデータのプレーンテキストであるres.responseTextとともに、それをDOMパースしてくれたres.responseXMLの両方を提供してくれるが、Greasemonkeyの独自拡張であるGM_xmlhttpRequestではres.responseTextしか返してくれない。
そこで、例えば「はてなグリースモンキー - マイミクシィ日記を番組表に表示」では
GM_xmlhttpRequest({ method: "GET", url: xml_url, onload: function(res) { var responseXML = document.createElement('div'); responseXML.innerHTML = res.responseText; // do something } });
という感じでパースしていた。
しかし、調査してみたところDOMParserという文字通りのクラスに含まれるparseFromStringを使えばOK(というより使うべき?)でした。
GM_xmlhttpRequest({ method: "GET", url: xml_url, onload: function(res) { var responseXML = (new DOMParser).parseFromString(res.responseText, "application/xml"); // do something } });
アップデートなど詳しくは専用ページ id:Yuichirou:10000409#rsstable_mix をご覧ください。