浏览器的调试与开发

简介: 浏览器的调试与开发💡 前言: 网页主要是运行在浏览器上, 主要由HTML、CSS、JS三部分组成, 比作一个人的话,HTML是身体、CSS是衣服、JS是动作, 下面主要介绍通过浏览器的调试工具,了解前端在开发过程中,是如何通过浏览器的调试工具进行开发与分析解决问题的

浏览器的调试与开发

💡 前言: 网页主要是运行在浏览器上, 主要由HTML、CSS、JS三部分组成, 比作一个人的话,HTML是身体、CSS是衣服、JS是动作, 下面主要介绍通过浏览器的调试工具,了解前端在开发过程中,是如何通过浏览器的调试工具进行开发与分析解决问题的

一、从 Chrome 浏览器说起

浏览器的市场天下三分,ChromeSafariFireFox,从 2008 年 Chrome 横空出世以来,如今已经一家独大占据了半壁江山

对于大部分人来说,Chrome 可能只是个浏览器,但是对于开发人员来说,它更是一个强大无比的工具,为了方便开发人员调试代码,主流的浏览器都内置了 DevTools, 所以无论你是前端还是后端,掌握 Chrome 的调试技巧意味着效率直接的提高。 Chrome-DevTools 的使用技巧。

1、 打开 Chrome 开发者工具  DevTools

  • Chrome 菜单中选择 更多工具 > 开发者工具
  • 在页面元素上右键点击,选择 “检查
  • 使用 快捷键 Ctrl + Shift + I (Windows) 或 Cmd + Opt + I (Mac)

Chrome DevTools - Chrome Developers

2、了解面板

💡 打开 devtool 后,如图,面板上主要有八个主要面板构成, 分别是元素面板、控制台面板、源代码面板、网络面板、应用面板、性能面板、内存面板、安全面板, 下面将会逐一进行介绍

二、学习浏览器面板

  • 快速过一下快捷键及Command命令 ( 虽然没什么卵用,但是真的可以起作用 )
  • ctrl+shift+D (⌘ + shift + D Mac) 来实现位置的切换
  • ctrl + [ctrl + ] 可以从当前面板的分别向左和向右切换面板
  • DevTools 中的前4个主要的面板,每一个都支持 [ctrl] + [f] 快捷方式,来进行查询
  • 元素面板下, 可以通过 h 键隐藏元素、delete删除元素、[ctrl]+[c] 复制元素、[ctrl]+[v] 粘贴元素、[ctrl]+[z] 撤销操作、按住 control + 箭头移动元素位置、拖动元素到任意位置
  • Chrome 的调试打开的情况下 按下 [ Ctrl] + [P] (Mac: [⌘] + [P] ) 打开搜索文件、输入 >  进行命令输入, 可以在这里输入 主题 切换面板主题、 输入 screen 进行截图等等

1、 元素面板

使用元素面板可以自由的操作 DOMCSS 来迭代布局和设计页面。

  • 检查和调整页面
  • 编辑样式
  • 编辑 DOM

如图: Elements 面板中有html 整个文档结构, 可以通过点击左上角第一个小鼠标图标,然后移到网页中点击任何你想审查的元素,然后可以在该元素上进行任何属性、HTML的修改、复制、删除、隐藏等等操作、 还可以对该元素进行节点截图、 还可以给DOM添加断点

![](p1-jj.byteimg.com/tos-cn-i-t2…

2、控制台面板

在开发期间,可以使用控制台面板记录诊断信息,日志输出、或者使用shell 在页面上与 Javascript 进行交互、页面发生任何异常也可以通过查看日志进行定位问题

  • console 调试
    可以在console 中输入任何 js 代码,并将其打印出来、如 new Date() 查看当前日志
  • console调试
  • 通过 Live expression 实时表达
  • jsx
  • 复制代码
var currentWidth
window.addEventListener('scroll',()=>{
    currentWidth = window.innerWidth})将如上代码的 currentWidth 输入到小眼睛的里面,再缩放页面,将实时计算 currentWidth 的值,不需要在打印log
  • 通过 i使用npm插件i 使用npm插件 i使用npm插件i('lodash') $i('moment')  , 只需要安装一个 Chrome插件:Console Importer
  • 给 console.log 前面加上%c 那么第二个可以加上css样式 , 如console.log('%c这是红色的打印','color:#f00;')

3、源代码面板

💡 源代码面板下存在 网页、文件系统、替换、内容脚本、代码段几个tab栏。 网页中存放着当前页面的代码、及一些依赖 文件系统和替换中可以添加本地的文件使用浏览器的 Workspaces 进行持久化保存代码、连接本地文件来使用开发者工具实时进行编辑 内容脚本: 存放着浏览器插件的一些执行脚本 代码段: 可以通过添加代码段,存储一些常用的代码、 可以双击执行run、或者command + p 输入 > + ! 快速查找执行

source 面板下主要进行

  • 断点调试、调试混淆代码、线上断点调试、可以对网络请求、DOM、JS代码进行断点
  • 使用开发者工具的 Workspaces(工作区)进行持久化保存,即时修改代码

💡 正常开发时,我们修改一个样式,经常是找到元素,修改完后, 复制样式,在放回代码中,保存。 使用workspaces 可以直接找到该类,修改样式,自动完成同步,非常理想化的开发体验

4、网络面板

💡 网路面板内常用的有过滤网络请求、控制网速、设置是否缓存、屏蔽网络请求

  • 过滤请求 如输入method:GET 、 status-code:200
  • 重新发送 XHR 请求 、 就不需要整个页面刷新、需要网络请求类型是 xhr
  • 网络接口屏蔽、可以对单一的接口进行屏蔽,如网站中的权限接口屏蔽后, 将可以无权限下,仍然可以浏览网页中部分信息
  • 网络请求速度的设置、可以预设网速,可以模拟优化网速慢的情况下的一些开发体验问题

5、应用面板

使用资源面板检查加载的所有资源,包括 IndexedDBWeb SQL 数据库,本地和会话存储,cookie ,应用程序缓存,图像,字体和样式表。

管理数据

💡 应用面板中主要是前端的管理数据,包括本地存储 (Local Storage)、会话存储(Session Strorage)、Cookie、Web SQL 、IndexedDB 等、 主要常用的前三个

浏览器提供了三种主要的存储机制,分别是cookie、localStorage和sessionStorage。它们各自有不同的用法和限制,下面对它们进行简要介绍:

  • Cookie是一种在客户端存储数据的小型文件,可以在Web服务器和浏览器之间传递。它们最初被设计用于记录用户的会话状态和其他相关数据,并且只能存储少量的数据(通常不超过4KB)。Cookie可以在浏览器关闭后仍然存在,并且可以设置过期时间。Cookie通常用于跟踪用户身份认证信息,例如用户名、密码等。
  • localStorage是HTML5提供的新功能,可用于在浏览器中存储持久化数据。与Cookie不同,localStorage存储的数据不会随着每次HTTP请求而被发送到服务器。localStorage可以存储大量的数据(通常限制在5MB左右)并且可以长期保存。它们通常用于存储应用程序的配置信息、用户首选项和其他需要长期存储的数据。可以手动移除或者退出登录时,执行移除操作、 如我们网站中的,判断弹窗只弹一次的操作等(同一主机名关联的所有标签页之间共享)
  • sessionStorage也是类似于localStorage的存储机制,但是与之不同的是,sessionStorage只在浏览器会话期间存在。也就是说,一旦用户关闭浏览器窗口或标签页,sessionStorage中保存的数据就会被清除。和localStorage一样,sessionStorage也可以存储大量的数据(通常限制在5MB左右),并且它们在与同一主机名关联的所有标签页之间共享(通过点击新开页面共享,直接新开不共享) , 我们网站中,路由地址切换的埋点追踪就是通过sessionStorage进行记录

6、性能面板

使用时间轴面板可以通过记录和查看网站声明周期内发生的各种时间来提高页面的运行性能。

7、内存面板

如果需要比时间轴面板提供的更多信息,可以使用“配置”面板,例如跟踪内存泄漏。

  • JavaScript CPU 分析器
  • 内存堆区分析器

8、安全面板

使用安全面板调试混合内容问题,证书问题等等。

相关文章
|
2月前
|
前端开发
调试前端时,在浏览器上修改参数并重新调用接口
有时候我们的页面点击过了,但是接口出问题,想修改参数再调用一次,一般是用apiPost工具把接口复制,再加上token和参数,但是这样非常的效率比较低。
42 0
|
2月前
|
Web App开发 数据采集 前端开发
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
16 0
|
4天前
|
JavaScript 前端开发 开发者
JavaScript基础入门之浏览器控制台调试输出
本文章是对小白学习js的初级教程,也是我对自己学习经验的一种总结,文章大多采用使用案例加讲解,带动学习的方式.因为我们的天性总是喜欢有及时反馈的事物,但是学习是一个慢长的事情,而有结果的回应,才会更好的促进自己去学习,主要是对于javascript学习中的输出,有个大体上的了解,同时通过教学能够更好的使用浏览器来方便我们去学习和运行代码,也是对自己进行笔记整理,对抓住信息关键点的一种提高.
|
25天前
|
监控 前端开发 JavaScript
如何在浏览器中使用javaScript进行代码调试
【4月更文挑战第11天】在浏览器中调试JavaScript是前端开发的关键技能。使用开发者工具(可通过F12、右键检查或菜单栏访问),遵循以下步骤:1) 打开Sources标签页查看所有脚本;2) 设置断点在需要暂停的代码行;3) 刷新页面触发断点;4) 利用调试工具如Scopes、Watch、Call Stack等检查代码状态;5) 使用Console辅助调试;6) 利用其他工具如Network、Performance和Memory进行性能分析。确保使用最新工具,保持代码清晰,以提升调试效率。
47 4
|
25天前
|
监控 前端开发 JavaScript
如何使用浏览器调试前端代码?
【4月更文挑战第11天】前端开发中,浏览器调试是关键技能,能提升代码质量。本文介绍了如何使用浏览器的调试工具:1) 打开调试窗口(F12或右键检查);2) Elements标签页检查DOM结构和样式;3) Console调试JavaScript,查看日志和错误信息;4) Sources设置断点调试JS文件;5) 利用Network、Performance和Memory等标签页优化性能。熟悉调试工具、利用日志和错误信息能有效定位问题,提高开发效率。
47 7
|
29天前
|
开发工具 开发者
谷歌浏览器打开DWG图纸,实现圆转多边形功能(在线CAD开发教程)
本文介绍了如何使用在线CAD SDK实现圆转多边形功能。首先,需搭建绘图环境和添加命令行交互。接着,通过mxcad库,根据用户输入的边数实现两种转换方式:内接于圆(目标圆为多边形外接圆)和外切于圆(目标圆为多边形内切圆)。具体实现包括选中圆、获取边数、选择转换方式,然后根据用户选择绘制多边形。最终展示了转换效果。
谷歌浏览器打开DWG图纸,实现圆转多边形功能(在线CAD开发教程)
|
2月前
|
移动开发 JavaScript
微信公众号H5开发,在微信浏览器打开H5,无法一键下载图片
微信公众号H5开发,在微信浏览器打开H5,无法一键下载图片
48 0
|
2月前
|
SQL 存储 JavaScript
前端浏览器调试详解版
前端浏览器调试详解版
60 0
|
4月前
|
Web App开发 JSON 前端开发
6款开发必备的Chrome谷歌浏览器扩展(部分火狐、edge浏览器商店也可以用)
6款开发必备的Chrome谷歌浏览器扩展(部分火狐、edge浏览器商店也可以用)
42 0
|
5月前
|
前端开发 测试技术
使用浏览器插件提升前端项目调试速度
使用浏览器插件提升前端项目调试速度

热门文章

最新文章