现在我正在开展一个网络项目。我需要在JavaScript中使用给定的字符串缓冲区创建XML文档对象。我已经成功地在IE上顺利运行,但显然我需要做更多的工作来提高它的兼容性。
这是一个很小的例子,描述了我想要表达的内容(注意,所有在JavaScript中) 首先,我们有一个字符串变量,比如“buffer”,它是从服务器获得的,实际上,它形成了一个XML:
"<Messages><Item>aaa</Item><Item>bbb</Item></Messages>"
然后,我可以使用以下代码段来创建IE可识别的XML doc对象:
var xmlDoc = new ActiveXObject("Microsoft.xmlDOM");
xmlDoc.async = false;
xmlDoc.loadXML(buffer);
我们已经得到了它。
所以,我想知道的是如何考虑浏览器兼容性(firefox,opera等)创建一个对象,以及它的用法是否相同。
答案 0 :(得分:5)
DOMParser应该有效。它不是标准,但它至少在WebKit(Safari,Chrome等)和Gecko(Firefox)上得到支持;我不知道Opera:
var buffer = "<Messages><Item>aaa</Item><Item>bbb</Item></Messages>";
var parser = new DOMParser();
var xmlDoc = parser.parseFromString(buffer, "text/xml");