Javascript UserScript-Opera中的空错误控制台
我正在编写一个用户脚本(=Greasemonkey),我正在FireFox中开发,但在Opera、FF和Chrome中都可以使用。我在Firefox中更改了整个脚本,用变量替换了所有文本,以便能够轻松地将脚本移植到其他语言。现在它不再在Opera中运行,也不会在控制台(Dragonfly)中显示任何错误。这个脚本什么都不做,所以肯定有一些语法错误Firefox可以处理,但Opera不能 我没有使用任何特定的FireFox功能(GM_*),正如我所说的:我只是用新的“翻译”数组中定义的变量替换脚本中的字符串 插入我的脚本的代码:Javascript UserScript-Opera中的空错误控制台,javascript,debugging,greasemonkey,opera-dragonfly,Javascript,Debugging,Greasemonkey,Opera Dragonfly,我正在编写一个用户脚本(=Greasemonkey),我正在FireFox中开发,但在Opera、FF和Chrome中都可以使用。我在Firefox中更改了整个脚本,用变量替换了所有文本,以便能够轻松地将脚本移植到其他语言。现在它不再在Opera中运行,也不会在控制台(Dragonfly)中显示任何错误。这个脚本什么都不做,所以肯定有一些语法错误Firefox可以处理,但Opera不能 我没有使用任何特定的FireFox功能(GM_*),正如我所说的:我只是用新的“翻译”数组中定义的变量替换脚本
(
function()
{
var script = document.createElement("script");
script.textContent = "(" + myFunctionName + ")()";
document.body.appendChild(script);
}
)();
所以
- Firefox是否可以处理JavaScript,但Opera不能
- 或者我可以让错误控制台为用户脚本工作吗
PPS:与此同时,我还尝试查找JS Lint的问题,但当你打喷嚏时,它会给出一个错误。消息控制台(Ctrl+Shift+O)应该包含来自用户脚本的错误。或者,您可以尝试将脚本打包到扩展中,并使用Dragonfly进行调试:消息控制台(Ctrl+Shift+O)应该包含来自用户脚本的错误。或者,您可以尝试将脚本打包到扩展中并使用Dragonfly进行调试:
script.textContent=“(“+myFunctionName+”)”)()
的形式很差,可能是问题的一部分(我不支持Opera)。最好是script.textContent=“(“+myFunctionName.toString()+”)”代码>其他人告诉我删除.toString(),因为它是上下文中的默认行为?这至少是某些浏览器的行为。我不知道它是否是规范的一部分。但是,删除toString()会混淆代码应该做什么——这始终是一种糟糕的做法。script.textContent=“(“+myFunctionName+”)”)
的形式很差,可能是问题的一部分(我不支持Opera)。最好是script.textContent=“(“+myFunctionName.toString()+”)”代码>其他人告诉我删除.toString(),因为它是上下文中的默认行为?这至少是某些浏览器的行为。我不知道它是否是规范的一部分。但是,删除toString()会混淆代码应该做什么——这始终是一个糟糕的做法。在上不知道Ctrl+Shift+O(无法再编辑以前的帖子)。我已将UserJS转换为oex文件,我现在正在尝试查找错误…现在可以了。在对象上使用“return”作为字段显然不是一个好主意。不过,我从未在Opera errorconsole中看到任何错误。在这种情况下,误用return不会对Firefox造成任何影响……这里没有列出Ctrl+Shift+O,但它包含在两种默认键配置中。或者,可以通过Opera->Page->Developer Tools->error Consoletrl+Shift+O找到该错误控制台。我已经将UserJS转换为oex文件,现在正在尝试查找错误…它现在可以工作了。在对象上使用“return”作为字段显然不是一个好主意。不过,我从未在Opera errorconsole中看到任何错误。在这种情况下,误用return不会对Firefox造成任何影响……这里没有列出Ctrl+Shift+O,但它包含在两种默认键配置中。或者,可以通过Opera->Page->Developer Tools->error console找到该错误控制台