Chrome开发者工具不完全指南(一、基础功能篇)

2015/06/23 · HTML5 · 2
评论 ·
Chrome

原文出处:
卖烧烤夫斯基   

就算你不是一名前端开发工程师,相信你也不会对Chrome浏览器感到陌生。根据最新的一份(2015/06)的浏览器市场占有率报告,Chrome近乎占有浏览器天下的半壁江山。简单、快捷使它成为了新时代人们的新宠。如果你是一名web开发人员,我推荐你使用Chrome。作为前端开发的”IDE”,你只需要搭配一个编辑器就能完成几乎所有的开发任务了。关于它的使用和功能分析要么都是大而不全,要么是巨细糜烦。本系会比较详细地分享卤煮的一些Chrome(F12开发者功能)使用经验,从一些基础的功能开始到它的一些高级性能分析器(Timeline、Profiles),在最后,将会推荐几款好的插件,希望对您的开发工作有些许的作用。如果你对一些面板模块功能已经很了解可以直接跳过去阅读你感兴趣的部分。

一、Elements
图片 1
在Element中主要分两块大的部分
A:HTML结构面板
B:操作dom样式、结构、时间的显示面板
1.在A中,每当你的鼠标移动到任何一个元素上,对应的html视图中会给该元素蓝色的背景。
图片 2
2.如果你单击选中一个元素,在A部分的底部,会显示该元素在html结构中的位置关系
图片 3
3.然后你可以在B部分的styles选项中编辑该元素的样式,并且看到html结构的实时更新(大大的福利)
图片 4
4.你可以在B界面中切换到Event Listeners选项,观察该元素绑定的事件。
图片 5

click 是事件名称

.div1 事件是索引名称(也就是通过什么绑定的)

attachment 事件来源

handler里面包含事件的毁掉主体内容

useCapture表示该事件是否向上冒泡
5.选中一个元素,右击鼠标,你会看到有一个弹出窗口出现,里面有若干选项
图片 6
Add attribut : 为该元素添加属性
Edit attribute:修改该元素的属性
Force element state:
为元素激活某种状态(主要用在可以几乎的元素比如a、input、button等)
Edit as
HTML:编辑该元素(你可以重写它的整个content)甚至修改它的标签名称
中间简单的掠过…….
Break
on:为该元素添加dom操作事件监听。包含三个选项(树结构改变、属性改变、节点移除)。这个选项的作用是帮助我们监控和定位操作元素的代码。请参看下图事例:
图片 7
6.在A界面的弹出选项窗口中选择node removal,在B界面切换到DOM
Breakpoints 选项,可以看到有注册信息。然后我们点击click
me按钮触发删除div3的事件,可以看到浏览器自动为我们定位删除该元素的代码部分,并且停止执行js代码:

图片 8

 

7.在B界面中切换到Properties选项,可以看到选中元素的各种信息(英文单词里面的介绍比较简单,就不一一介绍了)。

图片 9

 

8.点击A界面的任意地方,按快捷键ctrl+F可以看到底部有输入框,在输入框中输入你想要查找的任何内容,如果匹配到了,都回在A面板中高亮显示
图片 10
9.或者你可以点击左上角的问号图标,然后把鼠标移动到视图界面中,对准元素按下鼠标左键,对应的A界面会定位到选择的元素。
图片 11

 

 

二、Network
图片 12
1.Network是一个监控当前网页所有的http请求的面版,它主体部分展示的是每个http请求,每个字段表示着该请求的不同属性和状态
图片 13
Name:请求文件名称
Method:方法(常见的是get post)
Status:请求完成的状态
Type:请求的类型
Initiator:请求源也就是说该链接通过什么发送(常见的是Parser、Script)
Size:下载文件或者请求占的资源大小
Time:请求或下载的时间
Timeline:该链接在发送过程中的时间状态轴(我们可以把鼠标移动到这些红红绿绿的时间轴上,对应的会有它的详细信息:开始下载时间,等待加载时间,自身下载耗时)
图片 14
2.单击面板中的任意一条http信息,会在底部弹出一个新的面板,其中记录了该条http请求的详细参数header(表头信息、返回信息、请求基本状态—请参看http1.1协议内容对号入座)、Preview(返回的格式化转移后文本信息)、response(转移之前的原始信息)、Cookies(该请求带的cookies)、Timing(请求时间变化)
图片 15
3.在主面板的顶部,有一些按钮从左到右它们的功能分别是:是否启用继续http监控(默认高亮选中过)、清空主面板中的http信息、是否启用过滤信息选项(启用后可以对http信息进行筛选)、列出多种属性、只列出name和time属性、preserve
log(目前不清楚啥用)、Dishable cahe(禁用缓存,所有的304返回会和fromm
cahe都回变成正常的请求忽视cache conctrol 设定);

图片 16
4.最后在主面板的底部有记录了整体网络请求状态的一些基本信息
图片 17

三、Resources

Resources部分较简单,他主要向我们展示了本界面所加载的资源列表。还有cookie和local
storage 、SESSION
等本地存储信息,在这里,我们可以自由地修改、增加、删除本地存储。

图片 18 至于webSql,我知道的并不多,在开发中很少用到。如果你想了解这方面的信息,我推荐你去阅读这篇博客

1 赞 28 收藏 2
评论

图片 19

三、Resources

Resources部分较简单,主要向我们展示了本界面所加载的资源列表。还有cookie和local
storage 、SESSION
等本地存储信息,在这里,我们可以自由地修改、增加、删除本地存储。

图片 20

chrome快捷键 左右切换tag页

left: ctrl + pgup
right: ctrl + pgdn
new tab: ctrl + t

1.文件快速切换
快捷键Ctrl + P 就可以快速查找你的工程文件。

2.源代码内部查找
如果你想要查找源代码的内容,你可以使用Ctrl + Shift + F (Cmd + Opt +
F)并输入字符串关键词。

3.到某一行
当你在Chrome DevTools中打开一个源文件,你可以指定到任意一行,用快捷键
Ctrl + G (Windows 和 Linux), 或者 Cmd + L (Mac)并输入你想跳到哪一行。
你也可以示用Ctrl + O,并输入“:”+第几行。

4.在控制台中选中元素
在DevTools中你可以手动选择DOM元素。
$() 返回符合当前CSS选择器的第一个元素,例如 $(‘div’)
会返回页面中第一个div元素。
$$() 返回符合当前CSS选择器的一串 好多个 不是一个元素。

(下面的图是我在网上搜集的,自己写肯定没有这个配图说的清楚)

提示:右键点击图片选择在新窗口或新标签页中打开可查看大图。

Network

图片 21

Network是一个监控当前网页所有的http请求的面版,它主体部分展示的是每个http请求,每个字段表示着该请求的不同属性和状态

Name:请求文件名称
Method:方法(常见的是get post)
Status:请求完成的状态
Type:请求的类型
Initiator:请求源也就是说该链接通过什么发送(常见的是Parser、Script)
Size:下载文件或者请求占的资源大小
Time:请求或下载的时间
Timeline:该链接在发送过程中的时间状态轴(我们可以把鼠标移动到这些红红绿绿的时间轴上,对应的会有它的详细信息:开始下载时间,等待加载时间,自身下载耗时)

图片 22

2.单击面板中的任意一条http信息,会在底部弹出一个新的面板,其中记录了该条http请求的详细参数header(表头信息、返回信息、请求基本状态—请参看http1.1协议内容对号入座)、Preview(返回的格式化转移后文本信息)、response(转移之前的原始信息)、Cookies(该请求带的cookies)、Timing(请求时间变化)

图片 23

图片 24

位置1:filter过滤器,可在输入框中输入关键字搜索对应请求的文件。
位置2:请求文件的列表里进行了分类,个人常用的是查看XHR的分类,查看Ajax请求。
位置3:设置网络的通信方式。默认”No
thirotting”不节流。这里可以设置断网模式,或者模拟3G,4G网络等情况下页面加载的速度。网速可以在”settings”里面设置。

来源:

Timeline

Timeline面板是查看动态流的。在这里可以测试页面的性能问题。比如页面的渲染速度,动画的流畅度等。

图片 25

位置1:点击这个按钮开始Record,按钮变成红色,再次点击停止记录。
位置2:选择记录生成的图表模式
位置3:需要记录的类型
位置4:fps指每秒的帧数,这个可以衡量页面的渲染速度。如果超过60fps,则页面可能需要优化下了。如果超过30fps,则页面的卡顿现象会比较严重。
位置5:记录期间页面加载的比重。看哪个范围的值特别大,占用时间最长,然后有针对性的优化。

二、Network

图片 26

1.Network是一个监控当前网页所有的http请求的面版,它主体部分展示的是每个http请求,每个字段表示着该请求的不同属性和状态图片 27

Timeline:该链接在发送过程中的时间状态轴(我们可以把鼠标移动到这些红红绿绿的时间轴上,对应的会有它的详细信息:开始下载时间,等待加载时间,自身下载耗时)

图片 28

2.单击面板中的任意一条http信息,会在底部弹出一个新的面板,其中记录了该条http请求的详细参数header(表头信息、返回信息、请求基本状态---请参看http1.1协议内容对号入座)、Preview(返回的格式化转移后文本信息)、response(转移之前的原始信息)、Cookies(该请求带的cookies)、Timing(请求时间变化)

图片 29

3.在主面板的顶部,有一些按钮从左到右它们的功能分别是:是否启用继续http监控(默认高亮选中过)、清空主面板中的http信息、是否启用过滤信息选项(启用后可以对http信息进行筛选)、列出多种属性、只列出name和time属性、preserve
log(目前不清楚啥用)、Dishable cahe(禁用缓存,所有的304返回会和fromm
cahe都回变成正常的请求忽视cache conctrol 设定);

图片 30

4.最后在主面板的底部有记录了整体网络请求状态的一些基本信息

图片 31

Profile(性能优化)

性能分析(Profiler)就是分析程序各个部分的运行时间,找出瓶颈所在,使用的方法是console.profile()。

   1: <script type="text/javascript">
   2:       function All(){
   3:             alert(11);
   4:          for(var i=0;i<10;i++){
   5:                 funcA(1000);
   6:              }
   7:         funcB(10000);
   8:       }
   9:
  10:       function funcA(count){
  11:         for(var i=0;i<count;i++){}
  12:       }
  13:
  14:       function funcB(count){
  15:         for(var i=0;i<count;i++){}
  16:       }
  17:
  18:       console.profile('性能分析器');
  19:       All();
  20:       console.profileEnd();
  21:     </script>

图片 32

Audits 加载速度优化参照的是雅虎前端工程师的十四条黄金建议

Chrome(F12开发者工具)是非常实用的开发辅助工具,对于前端开发者简直就是神器,但苦于开发者工具是英文界面,且没有中文,这让很多朋友都不知道怎么用。下载吧小编为大家带来Chrome开发者工具基础功能和高级性能分析器(Timeline、Profiles)的图文详解教程,下面是基础功能篇。

console.count

除了条件输出的场景,还有常见的场景是计数。
当你想统计某段代码执行了多少次时也大可不必自己去写相关逻辑,内置的console.count可以很地胜任这样的任务。

function foo(){
//其他函数逻辑blah blah。。。
console.count('foo 被执行的次数:');
}
foo();
foo();
foo();

图片 33

一、Elements

图片 34

在Element中主要分两块大的部分:HTML结构面板(A)和操作dom样式、结构、时间的显示面板(B)。

1.在A中,每当你的鼠标移动到任何一个元素上,对应的html视图中会给该元素蓝色的背景。

图片 35

2.如果你单击选中一个元素,在A部分的底部,会显示该元素在html结构中的位置关系

图片 36

3.然后在B部分的styles选项中编辑该元素的样式,并且看到html结构的实时更新。

图片 37

4.在B界面中切换到Event Listeners选项,观察该元素绑定的事件。

图片 38

click 是事件名称

.div1 事件是索引名称(也就是通过什么绑定的)

attachment 事件来源

handler里面包含事件的毁掉主体内容

useCapture表示该事件是否向上冒泡

5.选中一个元素,右击鼠标,你会看到有一个弹出窗口出现,里面有若干选项。

图片 39

Break
on:为该元素添加dom操作事件监听。包含三个选项(树结构改变、属性改变、节点移除)。这个选项的作用是帮助我们监控和定位操作元素的代码。请参看下图事例:

图片 40

6.在A界面的弹出选项窗口中选择node removal,在B界面切换到DOM Breakpoints
选项,可以看到有注册信息。然后我们点击click
me按钮触发删除div3的事件,可以看到浏览器自动为我们定位删除该元素的代码部分,并且停止执行js代码:

图片 41

7.在B界面中切换到Properties选项,可以看到选中元素的各种信息(英文单词里面的介绍比较简单,就不一一介绍了)。

图片 42

8.点击A界面的任意地方,按快捷键ctrl+F可以看到底部有输入框,在输入框中输入你想要查找的任何内容,如果匹配到了,都回在A面板中高亮显示

图片 43

9.或者你可以点击左上角的问号图标,然后把鼠标移动到视图界面中,对准元素按下鼠标左键,对应的A界面会定位到选择的元素。

图片 44

开发者工具面板各个板块介绍

设备传感仿真

设备模式的另一个很酷的功能是模拟移动设备的传感器,例如触摸屏幕和加速计。你甚至可以恶搞你的地理位置。这个功能位于元素标签的底部,点击“show
drawer”按钮,就可看见Emulation标签 –> Sensors.

图片 45

有道云真的给我印象很不好
参考这个吧

图片 46

timeline
工具详解

发表评论

电子邮件地址不会被公开。 必填项已用*标注