chrome浏览器debug
Chrome浏览器审查元素
1.Elements标签页
Elements标签页的左侧就是对页面HTML结构的查看与编辑,你可以直接在某个元素上双击修改元素的属性。
1.Edit as HTML直接对元素的HTML进行编辑,或者删除某个元素,所有的修改都会即时在页面上得到呈现。
2.Copy可以将HTML代码直接复制下来,在拷贝别人网站上面的HTML代码的时候灰常方便,你懂的~~
3.Delete node删掉一个HTML Node
4.Break on可以对某个元素进行监听,在JS对元素的属性或者HTML进行修改的时候,直接触发断点,跳转到对改元素进行修改的JS代码处
Elements标签页的右侧可以对元素的CSS进行查看与编辑修改:
2.Network标签页
Network标签页对于分析网站请求的网络情况、查看某一请求的请求头和响应头还有响应内容很有用。注意是在你打开Chrome开发者工具后发起的请求,才会在这里显示的哦。
点击左侧某一个具体请求URL,可以看到该请求的详细HTTP请求情况:
我们可以在这里看到HTTP请求头、HTTP响应头、HTTP返回的内容等信息。
- Headers请求头信息和响应头信息
- Preview预览结果,如果是文件可以查看这个文件;如果是图片可以预览这个图片;如果是从服务器返回来的JSON数据,可以查看格式话后的JSON
- Response从服务器返回的响应结果
- Cookies请求和响应的Cookie
- Timing具体的响应时间
3.Resources标签页
Resources标签页可以查看到请求的资源情况,包括CSS、JS、图片等的内容。也可以设置各种断点。对存储的内容进行编辑然后保存也会实时的反应到页面上。
4.Timeline标签页
注意这个Timeline的标签页不是指网络请求的时间响应情况,这个Timeline指的JS执行时间、页面元素渲染时间
5.Profiles标签页
主要是做性能优化的,包括查看CPU执行时间与内存占用
6.Audits标签页
这个对于优化前端页面、加速网页加载速度很有用
Google chrome在“开发者工具”中提供了类似 dust-me 的冗余css检测功能。 chrome用户可以在Audits面板内使用这个功能: 选择 Web Page Performance 选框并点击Run,会得到类似如下格式的提示
Remove unused CSS rules (185)35.39KB (51%) of CSS is not used by the current page.> my.release.css: 35.39KB (51%) is not used by the current page.
这里显示了当前页面加载但没有用到的css样式文件和样式名称列表,点击css文件名前的 箭头可以展开得到一个列表。如果冗余内容很少,就可以直接分析一下然后到文件内删掉了。 需要注意的是,这个功能只是分析当前页面,所以很多其他页面需要但当前页没有使用的样式 也会列出。所以需要谨慎操作,完全确定了是冗余的样式,再手工清除。
我主要用这个功能去除一些想要借鉴的页面中冗余的css,都是从网站上直接保存来的单独页面。 所以我自制了批量清理工具。
我进行批量清理的步骤(由于Audits会将很多全局css认作unused,故批量清理比较危险,仅作学习使用):
1.将冗余的css列表保存成keys.txt
2.一般下载来的css都是压缩后的,不方便查看,这里我先将加密的css文件格式化:Replace regexp (default } -> }^J): RET
3.打开 keys.txt 和 需要精简的css文件,在 * scratch * 内使用 C-x C-e 执行以下代码: 由于chrome分析出的结果可能重复,这段小程序使用了cl的去重方法。
(let ((sbuf (get-buffer "style.css")) (kb (get-buffer "keys.txt")) (keys nil)) (set-buffer kb) (goto-char (point-min)) (while (not (eobp)) (push (buffer-substring (point-at-bol) (point-at-eol)) keys) (next-line) ) (set-buffer sbuf) (goto-char (point-min)) (require 'cl) (dolist (x (remove-duplicates keys :test #'equal)) (replace-regexp (concat x "{.*}\n") "") (goto-char (point-min)) )
)
7.Console标签页
就是Javascript控制台了:
在这个面板可以查看错误信息、打印调试信息(console.log())、写一些测试脚本,还可以当作Javascript API查看用。
console对象提供浏览器控制台的接入,不同的浏览器工作的方式是不一样的,这里介绍一些大都会提供的接口api。
console方法
判断第一个参数是否为真,false的话抛出异常并且在console输出相应信息。
以参数为标识记录调用的次数,调用时在console打印标识以及调用次数。
console.log方法的别称,使用方法可以参考Console.log()
打印一条以三角形符号开头的语句,可以点击三角展开查看对象的属性。
打印一条错误信息,使用方法可以参考 string substitution。
error方法的别称,使用方法参考Console.error()
打印树状结构,配合groupCollapsed以及groupEnd方法;
使用方法和group相同,不同的是groupCollapsed打印出来的内容默认是折叠的。
结束当前Tree
打印以感叹号字符开始的信息,使用方法和log相同
打印字符串,使用方法比较类似C的printf格式输出,可参考 string substitution 。
可以以第一个参数为标识,开始javascript执行过程的数据收集。和chrome控制台选项开Profiles比较类似,具体可参考chrome profiles
配合profile方法,作为数据收集的结束。
将数据打印成表格。Console.table [en-US]
计时器,接受一个参数作为标识。
接受一个参数作为标识,结束特定的计时器。
打印stack trace.
打印一个警告信息,使用方法可以参考 string substitution。
chrome浏览器debug的更多相关文章
- Chrome浏览器调试移动端网页,测试人员也可以轻松debug
现在的产品,移动端应用占据很大市场,在测试过程中,就会测试各种各样的移动端页面.测试过程,或多或少会发现些问题,无非就是前端.后端问题.后端接口问题,可以利用工具:Fiddler或charles抓包查 ...
- 如何在Chrome下Debug Mocha的测试
简介 经过前两篇文章的介绍,相信读者对Mocha应该有一定的认知了,本文重点讲述如何在Chrome下Debug Mocha Test, 方便你在测试fail的时候troubleshooting. 关键 ...
- CEF中文教程(google chrome浏览器控件) -- Windows下编译Chromium
CEF中文教程(google chrome浏览器控件) -- CEF简介 2013-04-10 16:48 42928人阅读 评论(4) 收藏 举报 分类: CEF(2) 目录(?)[+] ...
- 关于Google Chrome 浏览器的一些命令及用法
http://blog.csdn.net/zyz511919766/article/details/7356306 一些Chrome的地址栏命令(这些命令会不停的变动,所有不一定都是好用的) 在Chr ...
- 详解Google Chrome浏览器(操作篇)(一)
开篇概述 在上篇博客中详解Google Chrome浏览器(理论篇)一文中,主要讲解了Chrome 搜索引擎使用.Chrome安装和基本操作.Chrome 基本架构.多线程等原理性问题,这篇将重点讲解 ...
- 浅谈Google Chrome浏览器(操作篇)(上)
开篇概述 在上篇博客中详解Google Chrome浏览器(理论篇)一文中,主要讲解了Chrome 搜索引擎使用.Chrome安装和基本操作.Chrome 基本架构.多线程等原理性问题,这篇将重点讲解 ...
- 转-使用 CefSharp 在 C# App 中嵌入 Chrome 浏览器
使用 CefSharp 在 C# App 中嵌入 Chrome 浏览器 2016-09-23 分类:.NET开发.编程开发.首页精华0人评论 分享到:更多3 本文由码农网 – 小峰原创翻译,转载 ...
- chrome浏览器下的xdebug helper使用方法
chrome浏览器下的xdebug helper使用方法 自从安装了xdebug后,发现每次调试都需要从eclipse中先从头启动,然后一步步走到你要调试的页面,而不是说想什么时候调试就什么时 ...
- 详解Google Chrome浏览器(操作篇)(上)
开篇概述 在上篇博客中详解Google Chrome浏览器(理论篇)一文中,主要讲解了Chrome 搜索引擎使用.Chrome安装和基本操作.Chrome 基本架构.多线程等原理性问题,这篇将重点讲解 ...
随机推荐
- logger日志工具类
日志工厂类 package cn.itcast.utils; import java.util.logging.FileHandler; import java.util.logging.Handle ...
- Java语法基础总结
这次上课我们讲了Java语言中的枚举类型,并进行了一次课堂测试,测试代码如下: public class EnumTest { public static void main(String[] arg ...
- 大学二三事——那些事(1)
虽然另外一个队友早上忽然拉肚子没有办法去了,我个阿骚还是决定出发. 本来以为早点过去签到可以躲过李导,没想到在她上班的路上被她撞见. 坐在早上那班发往周至县的客车的时候,天气忽好忽坏. 从周至 ...
- 成为java高手的八大条件
1.扎实的基础 数据结构.离散数学.编译原理,这些是所有计算机科学的基础,如果不掌握它们,很难写出高水平的程序.程序人人都会写,但当你发现写到一定程度很难再提高 的时候,就应该想想是不是要回过头来学 ...
- js格式转换
//1.保留整数 function showInteger(value,row,index){ if(value!=null && value!="" && ...
- 获取生日对应星座的PHP函数
PHP 获取指定日期对应的星座名称 /** * 获取指定日期对应星座 * * @param integer $month 月份 1-12 * @param integer $day 日期 1-31 * ...
- How to solve java.net.SocketTimeoutException:60000millis problem in HDFS
Many HDFS users encounter the following error when DFSClient ready file from a certain Data Node. & ...
- 第七十七节,CSS3前缀和rem长度单位
CSS3前缀和rem长度单位 学习要点: 1.CSS3前缀 2.长度单位rem 本章主要探讨HTML5中CSS在发展中实行标准化的一些问题,重点探讨CSS3中新属性前缀问题和新的单位rem. 一 CS ...
- PAT 团体程序设计天梯赛-练习集 L1-008. 求整数段和
给定两个整数A和B,输出从A到B的所有整数以及这些数的和. 输入格式: 输入在一行中给出2个整数A和B,其中-100<=A<=B<=100,其间以空格分隔. 输出格式: 首先顺序输出 ...
- Node.js:回调函数
概要:本篇博客主要通过对比node.js异步与同步方式读取文件的方式来解释node中回调函数的作用. 1.异步方式读取文件: 新建一个文本文档用于测试,如下图: 代码如下: // node异步方式读取 ...