我将浏览器扩展程序从FF移植到chrome。我有这个XMLHttpRequest,它工作正常:
var xhrdata = new XMLHttpRequest(),
xhrdata.onreadystatechange = function () {
if (xhrdata.readyState === 4) {
if (xhrdata.status === 200) {
getJXONTree(xhrdata.responseXML);
}
}
};
xhrdata.open("GET", "mydomain.com/my.xml", true);
xhrdata.responseType = "document";
xhrdata.send();
这会将.responseXML发送到此函数(缩短)
function getJXONTree(oXMLParent) {
var vResult = true, nLength = 0, sCollectedTxt = '';
if (oXMLParent.hasAttributes()) {
vResult = {};
[...]
这在firefox中运行得非常好,但在chrome中,使用完全相同的代码轮询完全相同的XML,我收到此错误:
TypeError: Object #<Document> has no method 'hasAttributes'
我在这里缺少什么?
答案 0 :(得分:2)
Firefox在这方面更宽松,但必须是:
xhr.responseXML.documentElement
因为文档没有任何属性。谢谢@robW