Mozilla Validator 刚刚向我报告:
E4X 已弃用/已删除
错误:不再可能在大多数上下文之间传递 E4X 对象,包括不同的 chrome 窗口或 JS 模块。E4X 将被 Gecko 20(或可能更早)完全删除。有关更多信息,请参阅 https://developer.mozilla.org/en-US/docs/E4X。
现在,错误出现在这一行:
Components.utils.import("resource://gre/modules/Services.jsm");
const XUL = Namespace("xul", "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
Mozilla Validator 指向一个页面,该页面建议将此作为解决方案:
警告:E4X 已过时。在 Firefox 17 中默认禁用网页(内容),在 Firefox 20 中默认禁用 chrome,并将在 Firefox 21 中删除。请改用 DOMParser/DOMSerializer 或非本机 JXON 算法。
var response = xmlhttprequest.responseText; // bug 270553
response = response.replace(/^<\?xml\s+version\s*=\s*(["'])[^\1]+\1[^?]*\?>/, ""); // bug 336551
var e4x = new XML(response);
我在这里有点不合群,不知道该怎么办。任何线索将不胜感激。我该如何使用它?