饥人谷技术博客

Chrome DevTools

2017-10-22  本文已影响122人  betterwlf

Chrome以其界面简洁、大量的应用插件、良好的代码规范支持、强大的V8解释器,和Chrome开发者工具给前端开发者带来了很大的便利。利用好Chrome开发工具,能给我们开发工作带来很大的便利。下面我们就详细的介绍下Chrome DevTools。

1.怎么打开Chrome DevTools

开发者通过快捷键Ctrl+Shift+I或者直接按F12打开下面的面板:

Chrome DevTools

我们从左到右依次介绍标签项。

2.Elements标签

Elements标签页左侧是对Html元素的查看和编辑,右侧是对CSS的查看和编辑。如下图:

Element标签页左侧:选中DOM对象之后右键,就可以看到能够操作DOM元素的功能。

a.Add attribute:在标签中添加新属性;

b.Edit attribute:编辑标签的属性;

c.Edit as HTML:可以直接对HTML进行编辑和删除,更改的结果会立即展示在页面上;

d.Copy:可以用来复制HTML代码,我们在看到别的网站写的比较好的代码的时候,可以直接复制过来;

e.Scroll into view:将页面滚动到节点处;

d.break on:设置断点。

Element标签页右侧:选中DOM对象之后右键,就可以看到当前标签的CSS样式、属性等。双击,可以对CSS样式进行编辑。

a.Styles:显示用户定义的样式;

b.Computed:显示开发者工具计算好的元素样式;

c.Event Listeners:显示当前HTML DOM节点和其祖先节点的所有JavaScript事件监听器,这里的监听脚本可以来自Chrome插件;

d.Properties:全面的列出当前选中内容的属性。

3.Console标签

Console标签页也是javascript控制台,在这个面板可以查看错误信息、打印调试信息、写一些测试脚本,还可以作为Javascript API查看用。

注意:当需要换行的时候而不是回车的时候,请按Shift+Enter。

4.Sources标签

Source页面内我们能看到当前浏览器页面中的js源文件。在这里我们可以设置断点,调试js代码。

a.设置断点的方法

可以点击JS代码前面的数字外来设置断点,如果当前代码是经过压缩的,可以点击下方的花括号{}来增强可读性,所有的断点都会列出在右侧的断点区。

b.断点触发

① DOM元素节点发生改变时

Elements面板中指定的DOM节点上右击,在弹出的菜单中选择Break on...,可以看到三个选择项,比如我们选择Subtree modifications
那么当选择的节点里面的子节点被添加、删除、修改,则断点就会被触发。

②XHR生命周期改变时

当XHR生命周期状态发生改变或者XHR的URL与Sources面板右侧的XHR Breakpoints栏设置的字符串匹配时,则断点就会有触发。

③指定事件执行时

Sources面板右侧的XHR Breakpoints栏下面是Event Listener Breakpoints,列出了各种类型的事件,勾选你要监听的事件,在指定的事件执行时,断点就会有触发。

5.Application标签

Application标签页主要是记录网站加载的所有资源信息,包括存储数据(Local Storage,Session Storage、IndexedDB、Web SQL、Cookies)、缓存数据、字体、图片、脚本、样式等。

Local Storage:用于存储客户端浏览器的数据,它与cookie的不同之处在于没有时间限制,属于html5中的新特性以key/value的方式进行存储的,并且value只能是字符串形式,如果要使用其他数据类型,需要进行相应的转换。

Session Storage:用于本地存储一个回话(session)中的数据,这些数据只有在一个回话中的页面才能访问,并且当回话结束后,数据随之销毁。Session Storage不是一种持久化的本地存储,仅仅是会话级别的存储。

Frames窗格:顶级的top是一个主文档,在top下面是主文档的Fonts、Images、Scripts、Stylesheets等资源。最后一个就是主文件本身。

6.Audits标签

Audits标签页可以帮你分析页面性能,有助于优化前端页面,分析后得到报告

7.Profiles标签

Profiles标签页可以查看CPU执行时间与内存占用,这里不做过多介绍,后面会写专题介绍。

8.Network标签

Network标签页记录从发起网页页面请求的Request后分析HTTP请求后得到的各个请求资源信息(包括状态、资源类型、大小和所用时间等),可以根据这个进行网络性能优化。该面板的图如下,共有5个视窗:

a.Controls(工具栏):控制Networ的功能和外观;

b.Filters(筛选栏):控制Requests Table具体显示哪些内容;

c.Overview(概览):资源被加载过来的时间线,如果多条时间线垂直堆叠,表示多个资源被并行加载;

d.Request Table(请求列表):改视窗列出了所有的资源请求,默认按时间顺序排序,点击资源,可以查看更详细的信息;

e.Summary(总览):汇总了请求数量,传输数据大小,加载时间等信息。

Network视图

其中Request Table显示的信息如下:

9.Performance标签

Chrome57已经将Timeline改为Performance。在加载和使用网页应用程序或网页时,时间轴面板提供关于时间开销的完整概述。包括从加载资源到解析JavaScript,以及计算方式在内的所有事件,都会重新绘制在一个时间表中。该面板共有4个视窗:

a.Controls 录制开关和控制录制过程中需要记录哪些信息。

b.Overview 网页性能的概要信息。

c.Flame Chart CPU堆栈轨迹的可视化图表(火焰图)。在图表里面有1到3条虚竖线。

d.Details 当选择一个指定的事件后,会显示这个事件的更多信息;当没有选择事件时,会显示指定的时间帧信息。

10.Security标签

Security标签页可以告诉你这个网站的安全性,查看有效的证书等。如果网页是安全的,则会显示一条信息:This page is secure (valid HTTPS),点击View certificate可以查看main origin的服务器证书信息;如果网页是不安全的,则会显示:This page is not secure。

该面板可以区分两类不安全的页面:

版权归本人所有,如有转载,请注明来源。

上一篇 下一篇

猜你喜欢

热点阅读