我正在编写一个 Firefox 扩展(附加组件),使用 API page-mod 来调用内容脚本。
在内容脚本中,我使用window.onerror来记录页面加载时的js错误。内容脚本正确执行,但 window.onerror 从未触发,但加载的页面中存在 js 错误(我已验证 windows.onerror 可以捕获错误)。
这是代码的简化版本:
lib/main.js
var pageMod = require("sdk/page-mod");
pageMod.PageMod({
include: "*",
contentScriptFile: "./simple_script.js"
});
数据/simple_script.js
window.onerror = function (errorMsg, url, lineNumber) {
window.alert(errorMsg, url, lineNumber);
}
我正在使用 Firefox 34.0.5 进行测试
知道为什么当页面加载并且页面上有 js 错误时 window.onerror 不会触发吗?
最佳答案
您需要确保您的 window.onerror
位于代码顶部,如果在声明 window.onerror
之前抛出任何错误,则永远不会捕获。
关于javascript - window.onerror 在我的 Firefox 附加组件(page-mod API)中不会触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28007335/