In my first experimentation with js, I'm writing a greasemonkey script
which adds links to a page which, when clicked, will replace their
parent element with the contents of an element from another URL.
in the following function, pageHTML contains the entire text of an HTML
page, pulled in via GM_xmlhttprequest. The page contains a ul with
id="commentlisting". What I want to do, but can't seem to do, is turn
that lump of html in the pageHTML variable into a document that I can
run document.evaluate and document.getElementById on, just like I can
on the original page.
The second catch below alerts me with "TypeError:
tempnode.getElementById is not a function"
function getExpandedHTML(oldid, pageHTML)
{
GM_log("getExpanded started");
var tempNode;
try {
tempnode = document.createElement("document");
tempnode.innerHTML = pageHTML;
}
catch (e)
{
alert(e);
}
var listnode;
try {
listnode = tempnode.getElementById("commentlisting");
} catch (e)
{
alert(e);
}
//var innerlinks = listnode.evaluate("//a[@href]", listnode,
null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
//addlinkevenets(oldid, innerlinks);
GM_log("getExpanded finished");
return listnode.innerHTML;
}