将 HTML 字符串解析为 JScript ES3 中的文档

Parse a HTML string into a document in JScript ES3

由于 JScript 是 'out of browser',Javascript 的 Microsoft ES3 变体,很难做一些像将 HTML 字符串解析为对象这样简单的事情。

如前所述,JScript 不驻留在浏览器中,因此它没有标准文档类型,也没有 domparser。

我可以这样创建文档对象:

 var document = new ActiveXObject('htmlfile')
 document.innerHTML = http.responseText

虽然这会将 html 响应呈现到文档中,但我无法使用 getElementsByClassName、TagName 甚至 ID - 这正是我需要对 html 响应执行的操作看着(提到的混合)。

我试过使用 John Resig 的 "pure javascript HTML parser",但在 ES3 中不会 运行,而且我对 JScript/ES3 的了解不够,无法理解为什么不这样做。

https://johnresig.com/blog/pure-javascript-html-parser/

最终,我想解析文档对象中的 HTML 文件,并能够通过它们的 class、id、标记名等来提取元素。对我来说,这听起来应该是很简单,但事实并非如此。

如有任何帮助,我们将不胜感激。

getElementByIdgetElementsByTagName 似乎有效:

var document = new ActiveXObject('htmlfile');
document.open();
document.write('<html><div id="div1" class="class1">test</div></html>');
document.close();

WScript.Echo(document.getElementById("div1").id);

WScript.Echo(document.getElementsByTagName("div")[0].id);

WScript.Echo(document.getElementsByTagName("div")[0].className);