Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我能用Firefox的浏览器控制台做什么,而用Web控制台做不到?_Firefox_Console - Fatal编程技术网

我能用Firefox的浏览器控制台做什么,而用Web控制台做不到?

我能用Firefox的浏览器控制台做什么,而用Web控制台做不到?,firefox,console,Firefox,Console,我最近知道Firefox有一个不同于Web控制台的浏览器控制台,它可以通过将devtools.chrome.enabled设置为true来启用 我已经搜索了关于我能用它做什么的信息,但我只找到了 浏览器控制台允许您查看所有JavaScript错误和登录 浏览器,包括Firefox代码。要启用它,请转到 关于:在url栏中配置,并将devtools.chrome.enabled设置为true。 通过菜单Web Developer>浏览器控制台激活它 我发现浏览器控制台很有用,因为我可以看到沙盒G

我最近知道Firefox有一个不同于Web控制台的浏览器控制台,它可以通过将devtools.chrome.enabled设置为true来启用

我已经搜索了关于我能用它做什么的信息,但我只找到了

浏览器控制台允许您查看所有JavaScript错误和登录 浏览器,包括Firefox代码。要启用它,请转到 关于:在url栏中配置,并将devtools.chrome.enabled设置为true。 通过菜单Web Developer>浏览器控制台激活它

我发现浏览器控制台很有用,因为我可以看到沙盒GreaseMonkey脚本中的错误。但是我想它可以做很多有趣的事情,我在哪里可以找到一些信息呢?

当我问这个问题时,我说这个页面不存在,它是在2013年8月7日下午5:04:27创建的

浏览器控制台 浏览器控制台类似于,但适用于整个系统 浏览器,而不是单个内容选项卡

因此,它记录的信息与Web控制台-网络相同 请求、JavaScript、CSS以及安全错误和警告,以及 JavaScript代码显式记录的消息。然而,与其说 为单个内容选项卡记录此信息,它会记录信息 用于所有内容选项卡、附加组件和浏览器自己的代码

类似地,您可以使用浏览器执行JavaScript表达式 安慰但是当Web控制台在页面窗口中执行代码时 范围,浏览器控制台在浏览器的 镀铬窗。这意味着您可以与浏览器的所有选项卡进行交互 使用全局,甚至使用用于指定 浏览器的用户界面

要打开浏览器控制台,请从Web上选择浏览器控制台 Firefox菜单中的开发者子菜单或工具菜单(如果显示) Mac OS X上的菜单栏或菜单:

您可以看到浏览器控制台的外观和行为与 委员会:

窗户的大部分都被一辆汽车占据了 在顶部,a允许您过滤显示的消息 在底部,a允许您计算JavaScript表达式。 浏览器控制台日志记录 浏览器控制台记录与Web相同种类的消息 控制台:

包括JavaScript、CSS、安全警告和错误,以及JavaScript代码使用 API :通过命令行发送到浏览器的命令,以及执行这些命令的结果。 但是,它会显示以下消息:

由所有浏览器选项卡承载的web内容 浏览器自己的代码 附加组件。 来自加载项的消息 浏览器控制台显示消息 由所有Firefox加载项记录

例如,这里有一个非常简单的插件 当用户单击图标时记录错误:

// base-64 encoded icon, from http://edmerritt.com/'s "Vaga" icon set
var icon = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9" +
"hAAAC90lEQVR4Xk1STUgbWxQ+mbmZNGqcJGjaGBq7UUGpYCEUXMSFLgRBdKeIG6F06aKUt6irEks" +
"R3JjWGAquSjeW8p6g3UQeCPKeJvCgRYP4QxK0TaPPGJPMZMzM3J4bM9ED35x7z/nOud+9c0yKooBh" +
"h6FQV1lRZmRZ9l8riksplQjhedVssWQQm4SQwOMXL3YNviAIwBmb/WDwVT6X+1snZMz18GFLe3s7e" +
"dLdDR2dncTl9bZQjhvD/D//zc+/gTtGjGJJkv5wtrTYHLIMaioFFL2sqgA8D3VWK9gcDjhvbLRlUq" +
"mX38LhB93Pn08BGnewuNhVyOennW63zX5xAdfJJKiXl6Di1ewTExWvZrNQwriYz4PT4yH/Hx9PHm5" +
"s3DRQ8M5CQ0OzXZKgnMmAjqfqmBBHRqC+pwcco6OgUQoaxhXMO3QdiMVCsvH462Qy2UxKkuTHO4N2" +
"clIh6UimABVA1bOYztaYB1TpvH8fThMJj1vTholcLLqsHAeqJN0Wo9dwz0wtFkFjC6MRxus9Hrj68" +
"QM0TRsgiiQRARtI2J0yQpVYzuVuGqA3VFCGchnqzGaQrq5A13Uf4fE/lzSNUJ4HDZMGObu1xXArv6" +
"rOhDy5VALzvXtMQSvHC0Imz4YJA4ysVQvE3l7oCAaZZ/EaTPhLc4UC1DU1sQZJTsAJO0+ngXM6Qef" +
"5mgKusRGY8aJYK2YqCfLSiQSIbW3sClGOx/EsZLP5M10Hs8sFOsdVyL/W1yERCkF6ba1WLGD+Fz6q" +
"xObh6VOmIML5ZmZ26x2Odz+PjtRzfBzB6wXebgeTIEBubw/AYgEz7q2PHsE5HnK6vw/uvj7gRPEvV" +
"LAKOEgVbL59u/zl2bPy2vQ03Z6bo7vBID0Ih+n3hQW6NTtLMUc/jo/TjaUlGovFtqPRaD97WFZcQ2" +
"xlZSoSCJx8RvLy0BB97/fTD4OD9NPkJP0aCNB/IxGKhX/u7Oz0Mz5rYGKfuxaPx5tR2jBiAHM+9K2" +
"IJK6jiAhi1efznRn837fI5BVWw7NCAAAAAElFTkSuQmCC";

widget = require("sdk/widget").Widget({
  id: "an-error-happened",
  label: "Error!",
  contentURL: icon,
  onClick: logError
});

function logError() {
  console.error("something went wrong!");
}
如果需要,请打开浏览器控制台, 然后在Firefox中打开XPI文件并安装,您将看到一个图标 在加载项栏中:

单击图标。您将在浏览器控制台中看到如下输出:

仅对于基于SDK的附加组件,消息的前缀为 加载项日志错误的名称,便于查找所有消息 使用搜索框从此加载项中删除。通过 默认情况下,控制台只记录错误消息,但

浏览器控制台命令行 与Web控制台一样,命令行解释器使您能够 实时计算JavaScript表达式:

与Web控制台的命令行解释器一样,此命令 线路支架和各种 和如果命令的结果是对象,则可以

但是当Web控制台在内容范围内执行代码时 它所连接的窗口,浏览器控制台在 浏览器的chrome窗口的范围。您可以通过以下方式确认这一点: 评估窗口:

这意味着您可以控制浏览器:打开、关闭选项卡和 windows和更改其宿主的内容,并修改 通过创建、更改和删除XUL元素来创建浏览器的UI

控制浏览器 命令行解释器可以访问对象, 通过gBrowser全局,这使您能够控制 通过命令行浏览。请尝试在浏览器中运行此代码 控制台的命令行请记住,要向 浏览器控制台,使用Shift+Enter组合键:

var newTabBrowser = gBrowser.getBrowserForTab(gBrowser.selectedTab);
newTabBrowser.addEventListener("load", function() {
  newTabBrowser.contentDocument.body.innerHTML = "<h1>this page has been eaten</h1>";
}, true);
newTabBrowser.contentDocument.location.href = "https://mozilla.org/";
在OS X上,此类似代码将向“工具”菜单添加一个新项:

var parent = window.document.getElementById("menu_ToolsPopup");
var makeTheTea = gBrowser.ownerDocument.defaultView.document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "menuitem");
makeTheTea.setAttribute("label", "A nice cup of tea?");
parent.appendChild(makeTheTea);

我认为Mozilla放在那里的XUL示例在Quantum之后不再可用。但其余的都很有帮助。我想知道现在如何制作一个新的标签/窗口。。。该用谷歌搜索了
var parent = window.document.getElementById("menu_ToolsPopup");
var makeTheTea = gBrowser.ownerDocument.defaultView.document.createElementNS("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "menuitem");
makeTheTea.setAttribute("label", "A nice cup of tea?");
parent.appendChild(makeTheTea);