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:下一阶段前端开发技术的更多相关文章

  1. Chrome的开发者工具(Chrome Developer Tools)

    Chrome的开发者工具(Chrome Developer Tools) 按F12 https://developer.chrome.com/devtools/index http://www.w3s ...

  2. Chrome Developer Tools:Network Panel说明

    官方资料:Chrome Developer Tools: Network Panel 一.chrome Developer Tools:Network Panel 从网络面板中可以获取很多有用信息,如 ...

  3. Enabling Chrome Developer Tools inside Postman

    Chrome's Developer Tools are an indispensable part of the modern web development workflow. However, ...

  4. Chrome Developer Tools 中的 Preview 不显示 HTML 的问题

    Chrome Developer Tools 中的 Preview 不显示 HTML 的问题 最近升级到 Chrome V64,发现 Chrome Developer Tools 中的 Preview ...

  5. Chrome Developer Tools之内存分析

    可参考: Chrome Developer Tools之内存分析 http://www.kazaff.me/2014/01/26/chrome-developer-tools%E4%B9%8B%E5% ...

  6. Google Chrome Developer Tools

    原文:https://www.oschina.net/p/chromedevtools Google发布了Google Chrome Developer Tools,这是一系列面向Chrome开发者的 ...

  7. Web前端开发大系概览 (前端开发技术栈)

    前言 互联网建立50多年了,网站开发技术日新月异,但web前端始终离不开浏览器,最终还是HTML+JavaScript+CSS这3个核心,围绕这3个核心而开发出来大量技术框架/解决方案. 我从2000 ...

  8. 通往成功的钥匙--Web前端开发技术

    互联网是一个服务性行业,用户对网站良好的体验度,直接影响到网站的效果.无论你做了多少广告推广,没有用户体验度等于零.Web前端技术是为了解决用户体验度而诞生的.无论是百度.新浪.阿里巴巴等大型网站,还 ...

  9. 绝对精品推荐做前端的看下:Web前端开发体会十日谈

    20151208感悟: 前端人的角度来看的话,感觉像是阅读一个大牛前端的全部武功的一个秘籍说明,里面的思想高价值蛋白真是太多太多,推荐看. Web前端开发体会十日谈 一直想写这篇“十日谈”,聊聊我对W ...

随机推荐

  1. OpenCV 玩九宫格数独(二):knn 数字识别

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者:刘潇龙 前言 首先需要说明,这里所说的数字识别不是手写数字识别! 但凡对机器学习有所了解的人,相信看到数 ...

  2. PHP命名空间理解

    这玩意就是路径! 这玩意就是路径! 这玩意就是路径! 这玩意就是路径! 这玩意就是路径! use 就是声明要用某个路径的文件(类) 再有namespace的情况下,就类似于已经在一个路径里了 这个时候 ...

  3. servlet研究学习总结--OutputStream和PrintWriter的区别

    当用户和浏览器其进行交互时,会给服务器发送http请求,Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.requ ...

  4. Machine Learning——Supervised Learning(机器学习之监督学习)

    监督学习是指:利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程. 我们来看一个例子:预测房价(注:本文例子取自业界大牛吴恩达老师的机器学习课程) 如下图所示:横轴表示房子的面积,单位是 ...

  5. uoj #58 【WC2013】糖果公园

    题面:http://uoj.ac/problem/58 正解:树上带修改莫队. 首先Orz vfk大神,树上莫队的套路还是很厉害的..http://vfleaking.blog.163.com/blo ...

  6. 【跑会指南】2017年3-5月IT技术会议大合集

    2016年各类大会让人应接不暇,技术圈儿最不缺的就是各种大会小会,有的纯干货,有的纯广告.作为一名技术开发者,参加了几场大会,你是不是也开始思忖:究竟哪些会议才值得参加?下面活动家为你推荐几场2017 ...

  7. 使用CSS和JQuery实现表格单元格内容超出时部分隐藏,隐藏部分以...显示

    1.使用CSS实现,给此单元格添加一个Class: width:130px; display:block; overflow:hidden; word-break:keep-all; white-sp ...

  8. Git总结笔记3-把本地仓库推送到github

    说明:此笔记在centos 7 上完成 1.配置公钥 [root@kangvcar ~]# ssh-keygen -t rsa -C "kangvcar@126.com" [roo ...

  9. Java IO详解(一)------File 类

    File 类:文件和目录路径名的抽象表示. 注意:File 类只能操作文件的属性,文件的内容是不能操作的. 1.File 类的字段 我们知道,各个平台之间的路径分隔符是不一样的. ①.对于UNIX平台 ...

  10. RabbitMQ学习3----运行和管理RabbitMQ

    1.服务为管理 Erlang天生就是为了让应用程序无需知道对方是否存在同一台机器上即可互相通信. Erlang节点:Erlang虚拟机的每个实例.多个Erlang应用程序可以运行在同一个节点之上.节点 ...