0

如何编写下面的代码,使其适用于所有浏览器。目前它仅在 IE 中工作。

var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.loadXML(respText);

var element1 = xmlDoc.getElementsByTagName("element1");
var element2 = xmlDoc.getElementsByTagName("element2");

感谢解决此问题的任何指导?

谢谢,jdp

4

1 回答 1

1

如果您使用 jQuery,我将首先通过普通GET请求检索数据,然后使用jQuery.parseXML()它来解析它。这解决了所有不同的跨平台问题,还为您提供了一些出色的工具来更轻松地处理 xml 结构。

当然还有其他库也做类似的事情,但我不建议你自己从头开始这样做,因为我可以从经验中告诉你很多浏览器差异(我的意思是,你可以使用XMLHttpRequestandDOMParser和你会走得很远,但旧浏览器实现之间存在一些令人沮丧的差异)。

最后一件事,永远不要禁用async资源加载。如果构建 JS 以async简化某些功能的处理,至少例如加载外部资源,为什么还要冒着冻结浏览器来激怒用户的风险。

于 2013-10-30T19:23:03.283 回答