Chrome DevTools功能介绍

简介: Chrome DevTools功能介绍

Chrome DevTools功能介绍

1、Elements 元素:检查、调整页面,调试DOM,调试CSS

2、Network 网络: 调试请求,了解页面静态资源分布,网页性能检测

3、Console 控制台:调试JavaScript、查看log日志,交互式代码调试

4、Sources 源代码资源:调试JavaScript页面源代码,断点调试

5、Application 应用: 查看调试客户端存储,Cookie,LocalStorage,SessionStorage

6、Performance 性能:查看页面性能细节,细粒度对网页载入进行性能优化(高阶)

7、Memory 内存 CPU分析,内存堆栈分析器(高阶)

8、Security 安全:页面安全,证书

9、Audits 性能分析,使用Google Lighthouse辅助性能分析,给出优化建议(高阶)


打开Chrome开发者工具方式

1、菜单 -> 更多工具 -> 开发者工具

2、页面右键 -> 检查

3、快捷键

(1)打开最近关闭的状态

Mac: Command + Option + I

Windows: Ctrl + Shift + I

(2)快速进入Elements查看DOM或样式

Mac:Command + Option + C

Windows: Ctrl + Shift + C

(3)快速进入Console查看log运行JavaScript

Mac:Command + Option + J

Windows: Ctrl + Shift + J

(4)切换开发者工具位置

Mac:Command + Option + D

Windows: Ctrl + Shift + D


在Console中访问DOM节点

1、document.querySelectAll

2、使用$0访问选中的元素

3、拷贝 -> JS Path


在DOM中断点调试

1、属性修改时打断点 break on -> attribute modifications

2、节点删除时打断点 break on -> node removal

3、子树修改时打断点 break on -> subtree modifications


CSS调试

1、提升优先级

!important


2、动画效果

animation.css

https://daneden.github.io/animate.css/


Console面板

1、运行JavaScript代码,交互式编程

2、查看程序中打印的Log日志

3、断点调试代码Debugging

// 查看cookie
document.cookie

// 选择元素
document.querySelectorAll("img")


// shift + enter 换行不执行

// 斐波那契

var fibo = function(n){
    return n<3 ? 1 : fibo(n-1) + fibo(n-2); 
}

Console打印Log日志

// 1、信息 ,支持多个参数

console.log("hello", ", ", "world")
// hello , world

// 变量替换
var s = "hi";
console.log("%s hello", s);
// hi hello

// 2、警告
console.warn()

// 3、错误
console.error()

// 4、表格形式打印json
console.table({name: "tom"})

// 5、group信息组
console.group("start");
console.log("log");
console.info("info");
console.groupEnd("start");

// 6、自定义样式
console.log("%c这是绿色的日志", "color: green")

document.querySelector("#log").addEventListener("click",()=>{
console.log("log");
})

// 断言
console.assert(1===2)


// 运行时间
console.time()
// do something
console.timeEnd()

// 清屏
console.clear()

调试JavaScrip基本流程

1、console.log() 或者 alert() 运行时调试

2、JavaScript断点调试

3、运行时变量调试,修改源代码临时保存调试

(1)debugger

(2)事件断点

(3)源代码断点

<html>

<body>
<!-- 计算器实例 -->
<input type="text">
<input type="text">
<button>计算</button>
<p></p>

<script>
// 选取button元素
var button = document.querySelector("button");

// 添加按钮点击事件
button.addEventListener("click", () => {
var inputs = document.querySelectorAll("input");

let a = parseInt(inputs[0].value);
let b = parseInt(inputs[1].value);

document.querySelector("p").textContent = a + b;
})
</script>
</body>

</html>

Snippets

// 添加jQuery
let script = document.createElement("script");
script.src="https://code.jquery.com/jquery-3.4.1.js";;

// 防止 CDN 篡改 javascript
script.integrity = "sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU=";

// 会发起一个跨域请求(即包含Origin: HTTP头)。
// 但不会发送任何认证信息(即不发送cookie, X.509证书和HTTP基本认证信息)。
// 如果服务器没有给出源站凭证(不设置Access-Control-Allow-Origin: HTTP头),这张图片就会被污染并限制使用。
script.crossOrigin = "anonymous";

document.head.appendChild(script);

Application客户端存储

1、Cookies

// 添加cookie
document.cookie="a=2"

// 获取cookie
document.cookie

https://www.runoob.com/js/js-cookies.html

2、LocalStorage 永久存储

LocalStorage.getItem("key")
LocalStorage.setItem("key", "value")

3、SessionStorage 临时存储

sessionStorage.setItem("key", "value")
sessionStorage.getItem("key")

其他

网页截屏

comamnd + shifit +p

搜索 Capture full size screenshot

移动端开发调试

Sensors

NetWork conditions

            </div>
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
定位技术
阿里架构总监一次讲透中台架构,13页PPT精华详解,建议收藏!
本文整理了阿里几位技术专家,如架构总监 谢纯良,中间件技术专家 玄难等几位大牛,关于中台架构的几次分享内容,将业务中台形态、中台全局架构、业务中台化、中台架构图、中台建设方法论、中台组织架构、企业中台建设实施步骤等总共13页PPT精华的浓缩,供大家学习借鉴。
38251 108
|
Web App开发 JavaScript 中间件
构建高效后端服务:Node.js与Express框架的融合之道
【10月更文挑战第31天】在追求快速、灵活和高效的后端开发领域,Node.js与Express框架的结合如同咖啡遇见了奶油——完美融合。本文将带你探索这一组合如何让后端服务搭建变得既轻松又充满乐趣,同时确保你的应用能够以光速运行。
274 0
|
JavaScript 前端开发 测试技术
《手把手教你》系列技巧篇(三十八)-java+ selenium自动化测试-日历时间控件-下篇(详解教程)
【5月更文挑战第2天】在自动化测试过程中,经常会遇到处理日期控件的点击问题。宏哥之前分享过一种方法,但如果输入框是`readonly`属性,这种方法就无法奏效了。不过,通过修改元素属性,依然可以实现自动化填写日期。首先,定位到日期输入框并移除`readonly`属性,然后使用`sendKeys`方法输入日期。这样,即使输入框设置了`readonly`,也能成功处理日期控件。
451 1
|
缓存 负载均衡 算法
【软件设计师备考 专题 】性能指标(响应时间、吞吐量、周转时间)和性能设计
【软件设计师备考 专题 】性能指标(响应时间、吞吐量、周转时间)和性能设计
1194 0
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp微信小程序的网上商城设计的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的网上商城设计的详细设计和实现
104 0
基于SpringBoot+Vue+uniapp微信小程序的网上商城设计的详细设计和实现
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp微信小程序的林业产品推荐系统的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的林业产品推荐系统的详细设计和实现
194 1
|
消息中间件 网络协议 算法
网络协议的重要性与应用:理解进程间通信和网络分层结构(上)
学习网络协议的关键是了解其分层结构。在计算机网络中,我们使用的是OSI标准模型和TCP/IP网络模型。这些模型将网络通信划分为多个层级,每个层级都有不同的功能和作用。在本章节中,我们主要讲解了TCP/IP网络模型的前三层:应用层、传输层和网络层。后面的数据链路层和物理层将在下一篇文章中进行详细讲解
936 0
网络协议的重要性与应用:理解进程间通信和网络分层结构(上)
|
机器学习/深度学习 自然语言处理 算法
机器学习面试笔试知识点-贝叶斯网络(Bayesian Network) 、马尔科夫(Markov) 和主题模型(T M)2
机器学习面试笔试知识点-贝叶斯网络(Bayesian Network) 、马尔科夫(Markov) 和主题模型(T M)
235 0
|
Web App开发 自然语言处理 JavaScript
计算机运行原理:从1+1等于2看电脑是如何干活的?
人类大脑白天工作,晚上休息;电脑白天随人一起运转,到了晚上人类按下电源键,它们也开始休息。如果CPU中的电子元件有意识,那么它们觉察到自身的硬件性能一代比一代强,软件功能一代比一代复杂,它们能意识到在它们之上,有人类在指挥和操控着这一切吗?
613 0
|
运维 Dubbo 中间件
Dubbo3 源码解读-宋小生-6:Dubbo的SPI扩展机制之普通扩展对象的创建与Wrapper机制的源码解析
> Dubbo3 已经全面取代 HSF2 成为阿里的下一代服务框架,2022 双十一基于 Dubbo3 首次实现了关键业务不停推、不降级的全面用户体验提升,从技术上,大幅提高研发与运维效率的同时地址推送等关键资源利用率提升超 40%,基于三位一体的开源中间件体系打造了阿里在云上的单元化最佳实践和统一标准,同时将规模化实践经验与技术创新贡献开源社区,极大的推动了开源技术与标准的发展。 > 本文是
325 0