XML to JSON在firefox中工作但在chrome中产生TypeError

时间:2013-06-30 20:01:31

标签: javascript xml json google-chrome-extension firefox-addon

我将浏览器扩展程序从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'

我在这里缺少什么?

1 个答案:

答案 0 :(得分:2)

Firefox在这方面更宽松,但必须是:

xhr.responseXML.documentElement

因为文档没有任何属性。谢谢@robW