掌握Chrome Developer Tools:下一阶段前端开发技术
Tips
原文作者:Ben Edelstein
原文地址:Mastering Chrome Developer Tools: Next Level Front-End Development Techniques
你可能已经熟悉Chrome Developer Tools的基本功能:DOM检查器,样式面板和JavaScript控制台。 但是有一些不太知名的功能可以大大提高调试或应用程序创建工作流程。
1 黑色主题

Chrome内置了一个黑色主题。 可以通过单击开发工具窗格右上方的三点图标,单击“设置”,然后切换主题来启用它。

在出现的选项面板里,选择“Dark”。如下图:

有时候会发现会让我的眼睛看起来更加容易,显然,它看起来更酷!
2 选择模式

Chrome Developer Tools(DevTools)提供了多种选择元素的方法 —— 其中最方便的是选择模式。
通过按下开发工具面板左上角的鼠标图标(或使用cmd + shift + c快捷键)激活此工具,可以通过点击页面上的元素来选择它们。
一旦激活,可以在页面上移动鼠标并预览选择,然后单击以选择要检查的元素。
该工具非常适合快速选择页面上的元素,可以使用cmd + shift + c直接打开DevTools并进入选择模式。
3 保存为全局变量

检查记录到控制台的复杂对象有时会很棘手,如果它们有许多key,或者包含难以手动解析的值。 幸运的是,Chrome可以使用JavaScript轻松检查这些对象。
要这样做,右键单击控制台中的对象,然后选择“存储为全局变量”。 这将对象作为全局变量存储在名为temp1的控制台中,然后可以使用JavaScript进行操作。
4 Animation 工具

最近,Chrome团队为调试和创建动画添加了一些新功能。
单击控制台左上角的下拉列表显示一个“Animations” Tab 页,可让限制网站上所有动画的速度。
也可以暂停所有动画。 这对于一个充斥着各种动画的网站特别有用。


单击元素的transition属性中的紫色曲线图标,可以查看动画的运动曲线,并调整其属性。 此外,可以使用箭头图标滚动预定动画列表以应用于你的元素。
5 模拟元素的伪状态

样式元素的另一个便利工具是元素状态模拟器,可通过单击“Styles”面板右上角的:hov图标进行访问。
此工具可模拟与这些选择器相关联的悬停,活动,聚焦和访问和查看样式的元素伪状态。

要为这些伪状态添加样式,添加一个新的选择器(带+图标),并将:<state>添加到选择器字符串的末尾。
例如,要将一个悬停规则添加到具有类标识的li中,使用新的选择器li.logo:hover,并在其中添加样式。
然后,可以通过检查:hover元素状态来模拟元素上的悬停的测试样式。
6 美化CSS和JavaScript

调试或查看压缩的JavaScript和CSS非常困难。 但是幸运的是,DevTools提供了一个工具,使这更容易一些。
在“Sources” Tab 页打开一个压缩的文件后,可以单击该文件左下角的一对大括号的图标,DevTools将“美化”代码。
这对CSS非常适用,并且对JavaScript的整理也很好,尽管在压缩过程中丢失了一些信息(如变量名称)。
7 Alt + Up / Alt + Down 快捷键

调试CSS时,可以选择一个属性,并使用向上/向下键来调整其值。 默认情况下,箭头键将值调整为加1或减1。通过按住alt键,可以使用箭头键以0.1的步长精细调整值,这在使用小数值时特别有用。
相反,可以按住shift键以10的步长进行调整。
8 保留日志

保留日志是一个复选框,可让在页面刷新之间保留日志。 调试需要刷新页面的网站问题时,这是非常有用的,因为刷新后所有的控制台输出都被清除。
启用此选项时,控制台中将显示一种新类型的“导航”日志,以将页面刷新或导航事件显示到不同的页面。
9 Network + 日志过滤器

调试具有大量网络请求或控制台日志的应用程序时,可以对特定类型的事件进行过滤。
Chrome具有支持许多不同属性的过滤语言,以及像*这样的操作符进行通配符匹配。
如果输入-,Chrome将会显示一个输入提示,可以过滤各种属性。 还可以切换“正则表达式”模式,对每行中显示的数据执行正则表达式匹配。
10 代码覆盖

代码覆盖可以在运行Web应用程序时,查看每个JavaScript和CSS文件,哪些代码行已经运行,哪些代码没有。 这是一个非常有用的功能,因为在一个复杂的或长期的项目上工作时,很容易积累废弃的代码或已经不用的代码。
要使用它,请确保使用Chrome 59或更高版本,然后转到“Coverage” Tab 页。 按下“record”,然后开始运行应用程序。 完成后,Chrome会向你显示在会话期间运行的确切代码。
11 在生产环境调试问题
如果在自己的机器上运行应用程序,DevTools才有效。 如果有兴趣了解用户在生产中看到的错误和性能问题,请使用LogRocket。

LogRocket是一个前端日志记录工具,可以让你重现问题,就像在自己的浏览器中发生的那样。 LogRocket不是猜测错误发生的原因,还是要求用户进行屏幕截图和日志转储,而你可以重现会话以快速了解出现的问题。 它与任何应用程序完美配合,无论是什么框架,并且有插件来记录来自React,Angular和Vue.js的附加上下文。
LogRocket为你的应用程序装备了记录控制台日志,包含浏览器 header 和 body,还有元数据的网络请求/响应,Redux操作/状态和性能时间。 它还在页面上记录HTML和CSS,重新创建即使是最复杂的单页应用程序的像素完美视频。
更多LogRocket信息,请查看 LogRocke](https://logrocket.com/)。
掌握Chrome Developer Tools:下一阶段前端开发技术的更多相关文章
- Chrome的开发者工具(Chrome Developer Tools)
Chrome的开发者工具(Chrome Developer Tools) 按F12 https://developer.chrome.com/devtools/index http://www.w3s ...
- Chrome Developer Tools:Network Panel说明
官方资料:Chrome Developer Tools: Network Panel 一.chrome Developer Tools:Network Panel 从网络面板中可以获取很多有用信息,如 ...
- Enabling Chrome Developer Tools inside Postman
Chrome's Developer Tools are an indispensable part of the modern web development workflow. However, ...
- Chrome Developer Tools 中的 Preview 不显示 HTML 的问题
Chrome Developer Tools 中的 Preview 不显示 HTML 的问题 最近升级到 Chrome V64,发现 Chrome Developer Tools 中的 Preview ...
- Chrome Developer Tools之内存分析
可参考: Chrome Developer Tools之内存分析 http://www.kazaff.me/2014/01/26/chrome-developer-tools%E4%B9%8B%E5% ...
- Google Chrome Developer Tools
原文:https://www.oschina.net/p/chromedevtools Google发布了Google Chrome Developer Tools,这是一系列面向Chrome开发者的 ...
- Web前端开发大系概览 (前端开发技术栈)
前言 互联网建立50多年了,网站开发技术日新月异,但web前端始终离不开浏览器,最终还是HTML+JavaScript+CSS这3个核心,围绕这3个核心而开发出来大量技术框架/解决方案. 我从2000 ...
- 通往成功的钥匙--Web前端开发技术
互联网是一个服务性行业,用户对网站良好的体验度,直接影响到网站的效果.无论你做了多少广告推广,没有用户体验度等于零.Web前端技术是为了解决用户体验度而诞生的.无论是百度.新浪.阿里巴巴等大型网站,还 ...
- 绝对精品推荐做前端的看下:Web前端开发体会十日谈
20151208感悟: 前端人的角度来看的话,感觉像是阅读一个大牛前端的全部武功的一个秘籍说明,里面的思想高价值蛋白真是太多太多,推荐看. Web前端开发体会十日谈 一直想写这篇“十日谈”,聊聊我对W ...
随机推荐
- bzoj4652 [Noi2016]循环之美
Description 牛牛是一个热爱算法设计的高中生.在他设计的算法中,常常会使用带小数的数进行计算.牛牛认为,如果在k进制下,一个数的小数部分是纯循环的,那么它就是美的.现在,牛牛想知道:对于已知 ...
- MySQL 的Coalesce函数
今天用到了coalesce 函数,原因在于,我想要查找合同到期日的字段是否有值(因为合同到期日分3个字段,对应着不同的日期) select coalesce(contract_date1,contra ...
- react native 升级到0.31.0的相关问题 mac Android Studio开发环境
报错Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to com.facebook.re ...
- java-cef嵌入基于Chrome内核浏览器,做页面爬虫(可以尽在ajax异步请求数据)
1 CentOS 7.0 上安装和配置 VNC 服务器 2.1 2.1.1 首先,我们需要一个可用的桌面环境(X-Window),如果没有的话要先安装一个. 注意:以下命令必须以 root 权限运行. ...
- UI-UIwindow
1.什么是UI? UI (User Interface) : 用户界面,用户看到的各种各样的页面元素: 2.什么是UIWindow ? UIWindow : 一个基础容器,往窗口上放不同的东西,每个 ...
- Python之collections序列迭代器下标式循环冒泡算法等
练习题 元素分类 有如下值集合[11,22,33,44,55,66,77,88,99]将所有大于66的数作为一个列表放在字典的key为k1的value小于等于66的为k2的value {'k1':[7 ...
- 基于spark和sparkstreaming的word2vec
概述 Word2vec是一款由谷歌发布开源的自然语言处理算法,其目的是把words转换成vectors,从而可以用数学的方法来分析words之间的关系.Spark其该算法进行了封装,并在mllib中实 ...
- Java源码学习 -- java.lang.StringBuilder,java.lang.StringBuffer,java.lang.AbstractStringBuilder
一直以来,都是看到网上说“ StringBuilder是线程不安全的,但运行效率高:StringBuffer 是线程安全的,但运行效率低”,然后默默记住:一个是线程安全.一个线程不安全,但对内在原因并 ...
- B计划
简介:从一个初学者的角度来讲,要从六个方面来对计算机来做一个大约的了解: 计算机的组成: 电脑配置: 操作系统: CDEF盘: 正确的开关机(主要是关机): 常用软件: 1. 电脑由哪几部分组成? ...
- iStat for mac
iStat for mac 电脑硬件信息检测软件,安装完成后它位于"系统偏好设定"的应用程序面板,让您从选单列监测系统的各项丰富资讯,又不会占用使用者太大的桌面空间,提供的信息包括 ...