前端调试效率低?试试这10个“Chrome开发者工具”使用技巧

今天给大家分享一些使用“Chrome开发者工具”的小技巧。包括调试,优化页面渲染速度等。希望能提升Web开发人员的工作效率。
1,打开Shadow DOM显示
浏览器对例如Video、Password等组件进行了封装,无法查看到组件的详细代码,不利于调试。幸好,通过配置能够在元素标签器中显示被隐藏的组件代码。
实现:Settings → General → Elements → Show user agent shadow DOM
2,在控制台快速选择元素
在Chrome Dev Tools 控制台中还可以通过$变量来选择DOM元素:
- $:Chrome控制台中原生支持类jQuery的选择器。用$加上熟悉的css选择器就能选择DOM节点。
- $0 ~ $4:最近选择过的5个DOM节点。$0会返回最近一次点选的DOM结点。以此类推,$1返回的是上上次点选的DOM节点。最多可以保存5个,如果不满5个,则返回undefined。
3,多行插入符编辑内容
在Sources编辑框中,按住Ctrl(Cmd for Mac),在要编辑的地方点击鼠标,可以设置多个插入符。按下Ctrl + U 撤销编辑,快速输入,快速删除。
4,使用”3步快照”技术来找出JavaScript内存泄露
- 打开开发者工具并且切换到Profiles面板里;
- 在页面执行一个能引起内存泄露的操作;
- 点击“Take Snapshot”来执行一个堆快照;
- 重复执行步骤 2 和步骤 3 三次;
- 选择最后一个堆快照;
- 将过滤器从“所有对象”改为“快照 1 和 2 之间的对象”;
现在应该已经可以看到一组新的泄露对象的集合,选择其中的一个然后查看是什么导致的内存泄露。
5,强制改变元素状态
实现:
- Elements面板右侧Styles标签 → Toggle Element State
- Elements面板左侧右击 → Force element state
6,快速查找文件&搜索特定字符串
实现:Sources面板下 Ctrl+P(Cmd+P for mac)
开发者工具支持在源代码中搜索特定的字符串的功能,这种搜索方式不但能区分大小写,还支持正则表达式。
实现:Sources面板下 Ctrl + Shift + F(Cmd + Shift + F for mac)
7,多列内容选择&匹配相同选项
实现:
- 多列内容选择:按住Alt键,当鼠标箭头变为“+”号后,点击鼠标
- 匹配相同选项:选中需要匹配的元素,快捷键Ctrl + D(Cmd + D for mac)
8,改变颜色模式&自定义调色板
开发者工具支持在rgba、hsl和hexadecimal来回切换颜色模式和实时编辑预览页面颜色。
实现:
- 改变颜色模式:Shift + 点击鼠标
- 自定义调色板:点击样式区域颜色前面的小方块
9,设备模式&移动仿真
开发者工具能够模拟不同移动设备,快速测试移动端的用户体验,解决调试困难的问题。
- 通过模拟不同的屏幕大小和分辨率来测试响应式的设计效果, 也可以模拟Retina 屏幕;
- 使用网络模拟器来评估你的站点的性能,并且不会影响到其他选项;
- 可视化并审查 CSS 样式;
- 准确模拟设备输入,比如触控事件、地理位置以及设备屏幕朝向。
设备模式的另一个很酷的功能是模拟移动设备的传感器,例如触摸屏幕和加速计,甚至可以更改你的地理位置。
实现:Esc键 → Emulation → Enable emulation → Sensors
10,Workspace编辑本地文件
Workspace把开发者工具变成了一个真正的IDE。将Sources选项卡中的文件和本地项目中的文件进行匹配,直接编辑和保存,不必复制/粘贴到编辑器。
实现:Source左侧面板下右击 → Add Folder to worksapce
-END-
前端调试效率低?试试这10个“Chrome开发者工具”使用技巧的更多相关文章
- 前端基础进阶(六):在chrome开发者工具中观察函数调用栈、作用域链与闭包
在前端开发中,有一个非常重要的技能,叫做断点调试. 在chrome的开发者工具中,通过断点调试,我们能够非常方便的一步一步的观察JavaScript的执行过程,直观感知函数调用栈,作用域链,变量对象, ...
- 使用 Chrome 开发者工具进行 JavaScript 问题定位与调试
转自:https://www.ibm.com/developerworks/cn/web/1410_wangcy_chromejs/ 引言 Google Chrome 是由 Goole 公司开发的一款 ...
- 前端开发必备之Chrome开发者工具(一)
本文介绍的 Chrome 开发者工具基于 Chrome 65版本,如果你的 Chrome 开发者工具没有下文提到的那些内容,请检查下 Chrome 的版本 简介 Chrome 开发者工具是一套内置于 ...
- 前端开发必备之Chrome开发者工具(下篇)
本文介绍的 Chrome 开发者工具基于 Chrome 65版本,如果你的 Chrome 开发者工具没有下文提到的那些内容,请检查下 Chrome 的版本 本文是 前端开发必备之Chrome开发者工具 ...
- 前端开发必备之Chrome开发者工具(上篇)
本文介绍的 Chrome 开发者工具基于 Chrome 65版本,如果你的 Chrome 开发者工具没有下文提到的那些内容,请检查下 Chrome 的版本 简介 Chrome 开发者工具是一套内置于 ...
- Chrome开发者工具 debug 调试
Chrome 的开发者工具分为 8 个大模块,每个模块及其主要功能为: Element 标签页: 用于查看和编辑当前页面中的 HTML 和 CSS 元素. Network 标签页:用于查看 HTTP ...
- Chrome开发者工具调试详解
chrome开发者工具最常用的四个功能模块:元素(ELements).控制台(Console).源代码(Sources),网络(Network). 元素(Elements):用于查看或修改HTML元素 ...
- 【译】在 Chrome 开发者工具中调试 node.js
原文链接 : Debugging Node.js in Chrome DevTools 原文作者 : MATT DESLAURIERS 译文出自 : 掘金翻译计划 译文链接 : https://git ...
- 使用Chrome开发者工具调试Android端内网页(微信,QQ,UC,App内嵌页等)
使用Chrome开发者工具调试Android端内网页(微信,QQ,UC,App内嵌页等) 前言 移动端页面调试一直是好多朋友头疼的问题,iOS 由于其封闭的特性和整体较高的性能,整体适配相对好做,调试 ...
随机推荐
- 【Derby 系列】Apache Derby 功能特点
前言 进入Derby 的应用开发之前,浏览一下derby的功能集,这样在真正选择的时候,可以决定Derby是不是适合你的应用. 本篇的是[Derby 系列]初级的第3篇. 1. Derby 是关系型数 ...
- 如何使用Unix/Linux grep命令——磨刀不误砍柴工系列
http://man.linuxde.net/grep ---------------------------------------------------- 如何使用Unix/Linux gre ...
- gcc的-D和-U参数:宏的设置与取消 _CCFLAGS=" -w -enable-threads=posix -DLINUX -D_REENTRANT -DWORKONGN -Dlinux -D_GN_DETAIL_SDR_"
_CCFLAGS=" -w -enable-threads=posix -DLINUX -D_REENTRANT -DWORKONGN -Dlinux -D_GN_DETAIL_SDR_&q ...
- bat programming is easy and powerful
用linux的角度来思考windows,习惯了linux的shell后, 再来看windows的bat编程,就简单多了,简直就是理所当然 实际上windows的cmd命令行和linux的shell命令 ...
- 【社招】来杭州吧,阿里国际UED招前端~~
来杭州吧,阿里国际UED招前端~~ 依稀记得,几年前在北京的日子,两点一线的生活方式,似乎冲淡模糊了身边的一切,印象最深刻的莫过于北京的地铁站了吧(因为只有等地铁,搭地铁的时候,才能够停下脚步,静静地 ...
- iOS: imageIO完成渐进加载图片
imageIO完成渐进加载图片 不得不说,人都是有惰性的,一个月又快结束了,这个月虽说有点儿忙,但是绝对不差写几篇博客的时间,有时间去n次桌球厅,有时间玩n把英雄联盟,所谓小撸怡情大撸伤身,这个月游戏 ...
- JavaScript中的Function(函数)对象详解
JavaScript中的Function对象是函数,函数的用途分为3类: 作为普通逻辑代码容器: 作为对象方法: 作为构造函数. 1.作为普通逻辑代码容器 function multiply(x, y ...
- [Effective JavaScript 笔记]第17条:间接调用eval函数优于直接调用
eval函数不仅仅是一个函数.大多数函数只访问定义它们所在的作用域,而不能访问除此之外的作用域(词法作用域).eval函数具有访问调用它时的整个作用域的能力.编译器编写者首次设法优化js时,eval函 ...
- [Effective JavaScript 笔记]第59条:避免过度的强制转换
js是弱类型语言.许多标准的操作符和代码库会把输入参数强制转换为期望的类型而不是抛出错误.如果未提供额外的逻辑,使用内置操作符的程序会继承这样的强制转换行为. functin square(x){ r ...
- PHP 上传文件和读取文件崎岖路
今天php上传文件和读取文件没有搞出来,全靠后来大神来帮忙,总结一下:主要涉及到一下几个方面,在ubuntu下mkdir文件夹的时候要注意权限问题,一般情况下php是以一个较低的权限去执行的,所以如果 ...