0
我在將某些代碼遷移到適用於Android擴展的Firefox時出現問題。我需要從請求中提取一些信息,例如this fiddle,但是在移動設備中(爲了從WebPage中重現相似的特性,我將響應放在var中,因爲它們的起源策略相同)。從Android擴展解析Firefox的XMLHttpRequest響應
我知道代碼工作正常,因爲小提琴的作品。但是,當遷移到Android版Firefox時,它不起作用。
var parser = Cc["@mozilla.org/xmlextras/domparser;1"].createInstance(Ci.nsIDOMParser);
//ERROR IN NEXT STEP (DOESN'T THROW ANY MESSAGE - CONTROL FLOW JUST DISSAPPEARS)
var parsedXml = parser.parseFromString(response, "text/xml");
var xpathExpression = "//td[contains(.,'Raw text')]/../td[2]/pre";
var res = document.evaluate(xpathExpression, parsedXml, null, window.XPathResult.STRING_TYPE , null);
我調試了擴展,但沒有錯誤消息,既沒有例外。所以我在第一行(var parser = ...)中放置了一個斷點,我可以看到正在創建的解析器,但是在下一步中,流控制消失了,並且以下所有代碼都不會被執行。一切都在try-catch語句中,所以沒有理由消失。
我真的不明白髮生了什麼事。你可以幫我嗎?
adb logcat說:JavaScript錯誤:「WrongDocumentError:節點不能用於創建它的文檔以外的文檔」{file:「resource://gre/modules/addons/XPIProvider.jsm