chrome调试

本文详细介绍Chrome浏览器的开发者工具,包括Element面板的基本功能、资源控制面板、网络控制面板、源码控制面板(JS调试)、性能查看控制面板等功能。此外,还介绍了如何使用命令行进行调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很多Web前台 开发者 都喜欢这种 浏览器 自带的开发者工具,这对前台设计、代码调试很大帮助的。 

Chrome 浏览器得益于其优秀的V8解释器, java script执行速度和内存占有率表现非常优秀。对于 html +css+javascript前台技术的学习或者开发,浏览器developer tool的使用时必不可少的,也能极大的提高学习或者开发效率。本文根据版本 23.0.1271.10。在 window 下,开启developer tool的快捷键为F12。 

1 Developer tool功能结构
 
Developer tool的功能栏有8个,分别是标签、 资源 、网络、源码、时间轴、 性能 、监察和显示(命令行)。 

2 Element panel  
2.1 Element控制面板基本功能  
Element控制面板能够让你查看所有的DOM tree中的内容,可以根据html内容找到页面中的元素或者根据页面中的定位标签,同时可以改变DOM的内容。由javascript代码产生的标签,也只能通过这种方式查看了(在你的 IDE 中无法看到)。 

Element控制面板 

如上图所示,我选中 

标签之后,在页面中显示的对应的元素就会选中。如果,我现在要定位 百度 一下这个按钮,我可以通过左下角的放大镜,在页面中选中百度一下,DOM中也会把对应的标签给你找出来。这个功能在调试时绝对是利器。最下面显示的是现在选中标签在DOM中的层次关系。 

选元素找标签功能 

我们也可以对里面的内容进行临时性修改,如刚才找到的百度一下标签中的value改成“调试一下”后马上在页面中相应显示。 

临时修改内容 
2.2 右侧功能栏  
2.2.1 style查看  
使用css时,存在着样式覆盖等问题,有的时候显示的样式可能出乎你的意料,或者对元素的大小位置(特别是窗口)的查看。同时,我们也可以在这里进行临时修改,在页面中反应(真正的所见即所得,不是别的IDE所能替代的)。 

修改样式或大小 
2.2.2 标签注册事件查看  
如果你想知道“百度一下”这个按钮注册了哪些功能,或者鼠标点击时执行了哪个javascript函数,就可以通过这个功能实现了。 


选中百度一下标签,定位keydown事件,找到对应的执行函数 

2.2.3 查找功能  
Ctrl+F可以调出查找,查找你想要的内容,非常实用。 
3 资源控制面板  
资源控制面板包括了这个页面中下载下来的所有的资源,同时也包括本地的cookie,还有html5中local storage等高级功能。 

资源查看面板 

4 网络控制面板  
网络控制面板在两个方面还是非常还用的,一个是发现图片(css、js等)加载不了,可以通过 net work查看它请求的位置。第二个,是调试ajax时,可以查看它的请求和获取。如百度输入框中,输入 关键字 后会自动显示热门内容,这显然是一个ajax的使用。 

网络加载显示 


查看http请求和获得的内容 

5 源码控制面板(js调试)  
Javascript的调试,基本上是通过源码控制面板和命令行配合进行的。 

5.1 Beautiful javascript  
网上的js一般是压缩过的,阅读压缩过的javascript肯定是不是人能进行的,更别说添加断点了。在 Scripts 面板下面有个 Pretty print 按钮(这种符号 {}), 点击会将压缩 js 文件格式化缩进规整的文件, 这时候在设定断点可读性就大大提高了。 


调整前 




调整后 

5.2 代码出错定位  
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 2 3 <html xmlns="http://www.w3.org/1999/xhtml"> 4 5 <head> 6 7 <title>javascript add</title> 8 9 <script type="text/javascript">10 11 var  div =document.getElementByd("a");12 13 function calSum(){14 15 var a=parseInt(document.getElementById("num1").value);16 17 var b=parseInt(document.getElementById("num2").value);18 19 document.getElementById("num3").value=(a+b);20 21 }22 23 </script>24 25 </head>26 27 <body>28 29 <input type="text"/>add<input type="text"/>30 31 <input type="button" onclick="calum()" value="equal"/><input type="text"/>32 33 </body>34 35 </html> 

上面的代码中,红色标记部分显然是错误的,在IDE中有些错误是检查不出来的(特别是跟浏览器有关的部分)。加载该页面后,可以在显示栏看到报错信息,然后直接定位至出错点。 

Javascript错误位置定位 

5.3 添加断点及单步  
5.3.1 断点中断  
可以通过单击左侧侧添加断点,并在右侧显示。也可以通过watch expression添加查看的变量。 




我们添加了一个断点,如果在页面上的操作执行到断点处,就会在断点处终止。然后,我们可以通过右侧最上面的按钮调试,与VS等IDE的调试非常相近。Call stack是显示函数的调用栈,在调试大规模的javascript程序是非常有用。 



单步调试 

5.3.2 页面中断调试  
除了给设定常规断点外, 还可以在某一特定事件发生时中断(不针对元素) , 在 Scripts 面板右侧, 有个 Event Listener Breakpoints, 这里列出了支持的所有事件, 不仅 click, keyup 等事件, 还支持 Timer(在 setTimeout setInterval 处理函数开始执行时中断), onload, scroll 等事件。 

6 显示行(命令行)  
命令行对于我们这种菜鸟有一个非常有用的地方,对于javascript提供的 API 或者API的功能不是非常熟悉。这个时候命令行就成为我们试验最好的地方。如,我们想查看document下面有哪些函数,我们就可以在命令行中输入,然后选中并尝试。对于jquery等 开源 框架的学习,这种方式也非常高效,学代码还是得跑起来才行。 


我们可以在命令行里面直接改变内存中的内容,对于小函数我就可以用这样的方式直接替换。 

我们按enter是对输入的内容运行,如果要换行需要按shift+enter。在这里面,我们直接在命令行里面里面讲calSum函数覆盖掉,a+b换成了a*b。运行结果如下所示。 

命令行使用 



运行结果 

7 性能查看控制面板(profiles)  
这个控制面板允许我们查看函数运行时CPU占有率,还有内存占有率。这能够帮助我们 优化 代码,查看代码性能(内存还能查看闭包泄露等)。 


按start可以分析,现在的内存占有率。进行操作后,再得到第二份内存分析报告,这样我们就能通过内存变化来进行分析了。在底栏,还有对比、总结等选项。 



第一份内存分析报告 




第二份内存分析报告 

8 其他  
在调试过程中,可能还会受别的因数影响,如 迅雷 下载插件xl.js等,在开发时把这些东西禁用掉。 Firefox 浏览器的调试也非常强大,在以前开发工程中通常通过两个浏览器调试器的配合使用进行。当然,如果工程要求比较高,肯定要在不同浏览器下分别调试。 



摘自 :http://www.cr173. com /html/19114_1.html 
内容概要:本文档详细介绍了Analog Devices公司生产的AD8436真均方根-直流(RMS-to-DC)转换器的技术细节及其应用场景。AD8436由三个独立模块构成:轨到轨FET输入放大器、高动态范围均方根计算内核和精密轨到轨输出放大器。该器件不仅体积小巧、功耗低,而且具有广泛的输入电压范围和快速响应特性。文档涵盖了AD8436的工作原理、配置选项、外部组件选择(如电容)、增益调节、单电源供电、电流互感器配置、接地故障检测、三相电源监测等方面的内容。此外,还特别强调了PCB设计注意事项和误差源分析,旨在帮助工程师更好地理解和应用这款高性能的RMS-DC转换器。 适合人群:从事模拟电路设计的专业工程师和技术人员,尤其是那些需要精确测量交流电信号均方根值的应用开发者。 使用场景及目标:①用于工业自动化、医疗设备、电力监控等领域,实现对交流电压或电流的精准测量;②适用于手持式数字万用表及其他便携式仪器仪表,提供高效的单电源解决方案;③在电流互感器配置中,用于检测微小的电流变化,保障电气安全;④应用于三相电力系统监控,优化建立时间和转换精度。 其他说明:为了确保最佳性能,文档推荐使用高质量的电容器件,并给出了详细的PCB布局指导。同时提醒用户关注电介质吸收和泄漏电流等因素对测量准确性的影响。
<think>我们正在讨论如何用Chrome调试WebView中的内容。根据引用内容,主要涉及Android和iOS平台。下面将分平台说明调试步骤。 ### Android平台调试步骤 1. **在Android应用中启用WebView调试** 在包含WebView的Activity中,添加以下代码(通常在`onCreate`方法中): ```java if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { WebView.setWebContentsDebuggingEnabled(true); } ``` 这段代码会为应用中的所有WebView启用调试(无论是否在WebView上设置`setWebContentsDebuggingEnabled`)[^3][^4]。 2. **连接设备并运行应用** - 通过USB将Android设备连接到开发机,并确保设备已开启USB调试模式(在开发者选项中)。 - 运行包含WebView的应用,并加载需要调试的H5页面。 3. **在Chrome调试** - 在电脑上打开Chrome浏览器,访问:`chrome://inspect/#devices`。 - 在“Devices”下找到你的设备,并看到已启用调试的WebView列表(包括应用包名和WebView的URL)。 - 点击对应WebView下方的**inspect**按钮,即可打开Chrome DevTools进行调试(与普通网页调试相同)[^1][^3]。 ### iOS平台调试步骤(使用Safari或Chrome) #### 方法1:使用Safari(官方原生支持) 1. **启用设备调试功能** - 在iOS设备的“设置”>“Safari”>“高级”中,开启**Web检查器**。 - 在Mac的Safari浏览器中,启用“开发”菜单:Safari > 偏好设置 > 高级 > 勾选“在菜单栏中显示开发菜单”。 2. **调试步骤** - 在App中打开需要调试的WebView。 - 连接设备到Mac,在Mac的Safari菜单中:选择“开发” > [设备名称] > [WebView对应的网页]。 - 使用Safari的Web检查器进行调试[^2]。 #### 方法2:使用Chrome(通过适配器) 1. **安装调试工具** 在终端执行以下命令安装必要工具: ```bash # 安装ios-webkit-debug-proxy brew install ios-webkit-debug-proxy # 安装remotedebug-ios-webkit-adapter npm install remotedebug-ios-webkit-adapter -g ``` 2. **启动适配器** 运行适配器服务(默认端口9000): ```bash remotedebug_ios_webkit_adapter --port=9000 ``` 3. **配置Chrome** - 打开Chrome,访问:`chrome://inspect/#devices`。 - 点击**Configure...**,添加地址:`localhost:9000`。 - 确保iOS设备已连接并信任电脑,在App中打开WebView。 4. **开始调试** 在`chrome://inspect`页面会显示设备上的WebView,点击**inspect**即可调试[^2]。 ### 通用调试技巧 - **实时修改**:在DevTools中修改HTML/CSS/JS并实时查看效果。 - **断点调试**:在Sources面板设置JavaScript断点。 - **网络分析**:使用Network面板监控请求。 - **控制台交互**:在Console中执行JavaScript命令(例如:`window.innerWidth`验证视图尺寸)。 > ⚠️ 注意:Android要求API 19+(KitKat)以上;iOS需使用iOS 6+和Safari 6+。 §§相关问题§§ 1. 如何在Android WebView中捕获JavaScript错误? 2. WebView调试时如何模拟不同设备尺寸? 3. 调试WebView时遇到`inspect`按钮灰色不可用怎么办? 4. WebView与原生代码交互时如何调试双向通信? [^1]: Chrome远程调试webview。TL;DR 1、在您的原生 Android 应用中启用 WebView 调试;在 Chrome DevTools 中调试 WebView。 2、通过 chrome://inspect 访问已启用调试的 WebView 列表。 3、调试 WebView 与通过远程调试调试网页相同。 [^2]: Safari/Chrome调试WebView。前言 最近在写《iOS代码调试》系列的博客,估计会有十篇以上的内容,等到都写完了会在Github以一个仓库的形式开源出来,欢迎关注我的Github: LeoMobileDeveloper WebView 大多数App会选择H5去实现某些弱交互但是却需要热更新界面,这时候WebView就派上用场了,那么如何对WebView进行调试呢? Safari 开启开发菜单 Safari -> 偏好设置 勾选“在菜单栏显示开发菜单” 设备的Safari调试 设置 -> Safari -> 高级 - > 开启Web检查器 选择要调试的网页 在App内打开对应的Webview 状态栏点击开发 -> 选择设备 -> 选择网页 然后,就可以通过safari调试这个网页了 对于iOS原生开发来说,用的做多的还是终端,比如你要测试一个WKWebView的JSBridge window.webkit.messageHandlers.bridgeName.postMessage({//data..}) 或者测试一个scheme window.location.herf="xxxxx" 建议iOS开发者学习一些JS的基本知识,这会对调试WebView大有帮助。 Chrome调试 Chrome调试比较适合写H5的同学,因为在这里可以使用类似React/Redux等插件来提高效率。 准备工作: 开启iOS设备中Safari设置的WebContent检查器确保手机被系统信任 安装:ios-webkit-debug-proxy brew install ios-webkit-debug-proxy 安装:remotedebug-ios-webkit-adapter npm install remotedebug-ios-webkit-adapter -g 运行adapter: remotedebug_ios_webkit_adapter --port=9000 接着,在App中打开包含WebView的应用,然后chrome打开如下地址 chrome://inspect/#devices 点击config 添加localhost:9000 然后,就能够看到刚刚应用中的WebView了 点击inspect,就可以用Chrome进行调试了: [^3]: Android使用Chrome调试webview中的H5界面。 2、代码中为WebView开启可调式:把如下代码加到webview所在的activity的onCreate方法中 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { WebView.setWebContentsDebuggingEnabled(true); } [^4]: Chrome调试WebView加载的网页。首先在要调试的项目里加入以下代码,才可开启调试 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { WebView.setWebContentsDebuggingEnabled(true) }</think>### Chrome调试WebView的完整指南 在Chrome调试WebView内容需要**启用调试模式**并**连接Chrome DevTools**。以下是具体操作步骤: #### 一、Android平台调试(推荐方法) 1. **开启WebView调试模式** 在WebView所在的Activity中添加代码(API 19+): ```java // 在Activity的onCreate()方法中添加 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { WebView.setWebContentsDebuggingEnabled(true); // 关键代码[^3][^4] } ``` 2. **连接设备调试** - 通过USB连接Android设备到电脑 - 打开设备的**USB调试模式**(设置 > 开发者选项) - 在Chrome地址栏输入:`chrome://inspect/#devices` - 在**Devices**区域会显示已连接的设备 - 在**WebView**区域列出所有可调试的WebView实例 3. **开始调试** 点击目标WebView右侧的**inspect**按钮,即可打开Chrome DevTools进行调试(与网页调试体验相同)[^1]。 --- #### 二、iOS平台调试方法 1. **基础准备** - 在iOS设备上:设置 > Safari > 高级 > 开启**Web检查器** - 在Mac的Safari:Safari > 偏好设置 > 高级 > 勾选"在菜单栏显示开发菜单" 2. **方法1:使用Safari调试(原生支持)** - 连接iOS设备到Mac - 在App中打开WebView - 在Mac的Safari菜单:开发 > [设备名称] > 选择WebView页面 - 使用Safari的Web检查器调试[^2] 3. **方法2:使用Chrome调试(需适配器)** ```bash # 安装调试工具 brew install ios-webkit-debug-proxy npm install -g remotedebug-ios-webkit-adapter # 启动适配器 remotedebug_ios_webkit_adapter --port=9000 ``` - 打开Chrome访问:`chrome://inspect/#devices` - 点击**Configure**,添加地址:`localhost:9000` - 选择出现的WebView实例进行调试[^2] --- ### 调试功能说明 在Chrome DevTools中可执行: 1. **元素检查**:实时修改HTML/CSS 2. **控制台调试**:执行JS命令,查看`console.log()`输出 3. **网络分析**:监控所有网络请求 4. **性能分析**:检测内存泄漏和CPU使用 5. **设备模拟**:在**Device Toolbar**(Ctrl+Shift+M)测试响应式布局 > ⚠️ 注意: > - Android要求API 19+(KitKat) > - iOS需使用iOS 6+和Safari 6+ > - 遇到空白页面时,检查设备是否授权USB调试 --- ### 调试技巧 1. **自动刷新**:启用DevTools的**Auto-open DevTools**功能 2. **远程调试**:对于真机问题,使用`adb forward tcp:9222 localabstract:chrome_devtools_remote`建立隧道 3. **元素断点**:右键元素选择**Break on**监听DOM变化 4. **移动端同步**:在DevTools点击**设置** > **Devices**添加网络设备 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值