Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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
Google chrome 在devtools中调试时,如何禁用chrome extensions JS?_Google Chrome_Google Chrome Extension_Google Chrome Devtools - Fatal编程技术网

Google chrome 在devtools中调试时,如何禁用chrome extensions JS?

Google chrome 在devtools中调试时,如何禁用chrome extensions JS?,google-chrome,google-chrome-extension,google-chrome-devtools,Google Chrome,Google Chrome Extension,Google Chrome Devtools,当我添加鼠标事件断点时,devtools总是跳转到扩展的JS中 有没有办法直接指向我的鼠标事件代码?首先,您可能应该在此处查看有关如何调试chrome扩展的教程: 如果有疑问,您可以在要启动调试器的JavaScript代码中直接使用调试器关键字,如下所示: element.addEventListener("mouseover", function() { debugger; // some JS handler code... }); 根据JS是否位于弹出窗口、背景页面或内

当我添加鼠标事件断点时,devtools总是跳转到扩展的JS中


有没有办法直接指向我的鼠标事件代码?

首先,您可能应该在此处查看有关如何调试chrome扩展的教程:

如果有疑问,您可以在要启动调试器的JavaScript代码中直接使用
调试器
关键字,如下所示:

element.addEventListener("mouseover", function() {
    debugger;
    // some JS handler code...
});
根据JS是否位于弹出窗口、背景页面或内容脚本中,您需要确保从正确的位置启动开发工具

对于弹出窗口,您需要右键单击扩展图标并“检查弹出窗口”,然后从JavaScript控制台运行
location.reload(true)

对于背景页面,您需要转到扩展设置页面,
chrome://settings/extensions
,打开开发者模式,展开相关扩展,然后单击背景页链接


内容脚本应该可以从加载到的页面直接看到。

我认为最简单的方法是打开一个匿名窗口(Ctrl-Shift-N)(或mac的Cmd-Shift-N)并在其中调试,因为这样就不会加载扩展(默认情况下)

我知道你这个问题的意思:在调试和执行一些简单的操作(如暂停执行)时,你总是会发现它会分解成扩展代码而不是当前网页的代码。

禁用脚本的唯一方法(例如,避免副作用)是禁用扩展(例如,如果未在匿名模式下启用扩展,则使用匿名模式)

如果您不介意运行脚本,但希望忽略扩展代码,则可以使用脚本

如果您从未开发过扩展,并且对单步执行不感兴趣,请打开devtools的设置菜单,单击黑盒,然后单击“黑盒内容脚本”复选框:


如果您只想有选择地忽略文件,那么您也可以右键单击要忽略的文件源,然后单击“黑盒脚本”上下文菜单选项。要删除该模式,请转到“黑盒”设置面板,如前所示。

我想澄清一下可能会有所帮助。这是什么意思“直接指向我的鼠标事件代码"?@RoName假设我正在调试某个页面的js,监听所有mousedown事件,devtools将显示在扩展的js代码中注册的mousedown处理程序。是否有任何方法可以直接在页面的js中显示mousedown处理程序?在调试器中,您应该能够选择正在查看的js文件。一旦您选择页面的js文件,y您应该能够在那里设置断点。这不起作用吗?他不是在问如何调试扩展。他是在问如何防止调试程序在调试普通Web应用程序时进入扩展。只是要注意:有时扩展代码的黑盒似乎会在给定域/开发工具实例中停止工作。在这种情况下,在任务管理器中找到“开发工具”任务,将其杀死,关闭该选项卡,然后在新选项卡中重新打开网站。这是我发现的在黑箱行为中断时(偶尔)恢复黑箱行为的唯一方法。黑箱选项卡现在为“忽略列表”,黑箱内容脚本选项现在为“将内容脚本添加到忽略列表”