- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅析浏览器解析和渲染
偏右
Loading
Parsing
Rendering
Layout
Painting
DNS预解析
当Chrome访问google页面的搜索结果时,它会取出链接中的域名进行预解析。
link rel=dns-prefetch href=//
预下载
利用空闲时间段的流量来预加载,提升用户访问后续页面的速度(淘宝购物车页或订单页预加载收银台的资源?)
link rel=prefetch href=http://
利用JS实现
preload = [/pagr2/sleep.expires.png,
/pagr2/sleep.expires.js,
/pagr2/sleep.expires.css],
for (i = 0, max = preload.length; i max; i += 1) {
if (isIE) {
new Image().src = preload[i];
continue;
}
o = document.createElement(object);
o.data = preload[i];
o.width = 0;
o.height = 0;
}
document.body.appendChild(o);
使用get请求
大部分浏览器(除了Firefox)在使用post时也会发送两个TCP的packet,所以性能上会有损失,而Get只有一个。
/archives/2009/08/xmlhttprequest-xhr-uses-multiple-packets-for-http-post/
http连接数
在《Even Faster Web Sites》一书中推荐了对静态文件服务使用HTTP/1.0协议来提高IE 6/7浏览器的速度。
浏览器
HTTP 1.1
HTTP 1.0
IE 6,7
2
4
IE 8
6
6
Firefox 6
6
6
Safari 7
6
4
Chrome 15
6
?
Opera 12
6
4
Loading
Parsing
Rendering
Layout
Painting
Parsing
将HTML文档转化为DOM树并下载相关资源的过程。
html
head
title
“标题”
Body
div
h1
“文本”
p
“文本”
各浏览器加载策略
Demo
!DOCTYPE html
html
head
title测试各浏览器加载的页面/title
link rel=stylesheet href=style1.css type=text/css /
link rel=stylesheet href=style2.css type=text/css /
link rel=stylesheet href=style3.css type=text/css /
/head
body
p测试文字/p
img src=“1.jpg” alt=“图1
img src=“2.jpg” alt=“图2
img src=“3.jpg” alt=“图3
script src=test1.js/script
script src=test2.js/script
script src=test3.js/script
/body
/html
IE 6/7 Opera
按文档顺序解析,CSS并行加载,外部JS串行加载,阻塞后续资源
IE 8/9
JS并行加载
Firefox Chrome
分析文档结构,优先并行加载css和js
同步模型
JS引擎是基于事件驱动的单线程。
浏览器一般有三个常驻线程:JS引擎线程、界面渲染线程、浏览器事件触发线程。
GUI渲染线程负责渲染网页,GUI渲染线程与JS引擎是互斥的,当JS引擎执行时GUI线程会被挂起。页面将停止一切解析和渲染的行为。
JS阻塞
JavaScript(inline external)的执行可能改变DOM结构,因此Parser和Render都会挂起等待JS执行结束。
执行在所有浏览器中默认都是阻塞的。
external JS的下载不应该阻塞页面。
IE6/7、Opera
JS执行策略
!DOCTYPE html
html
head
title测试各浏览器加载的页面/title
link rel=stylesheet href=style1.css type=text/css /
link rel=stylesheet href=style2.css type=text/css /
link rel=stylesheet href=style3.css type=text/css /
/head
body
p测试文字/p
script sr
您可能关注的文档
- 下位颈椎椎间关节解读.ppt
- 吴胜个人总结解读.ppt
- 子宫内膜异位症指南分析.ppt
- 写论文格式与word的操作解读.ppt
- 第十一章 Fireworks的动画制作和优化输出解析.ppt
- 脂肪酸的分解代谢08分析.ppt
- JavaWeb开发环境配置教学.ppt
- 飞思卡尔S12X嵌入式设计2解析.ppt
- 蒂森电梯慢车调试工艺剖释.doc
- 三大物质代谢详解.ppt
- 长沙市岳麓实验中学高三期中考试物理-学生用卷.pdf
- 福建省莆田砺志学校2025-2026学年高一上学期期中质量检测物理试题(无答案).pdf
- 云南省昆明市第十四中学2025-2026学年高三上学期期中考试历史试题(含答案).pdf
- 2025-2026学年上学期广东省兴宁市宋声学校九年级中段考道德与法治试卷.pdf
- 2025-2026学年上学期广东省兴宁市宋声学校八年级中段考历史试卷.pdf
- 统编版八年级上册道德与法治作业第三单元《勇担社会责任》单元测试题(含答案).pdf
- 云南省昆明市2024-2025学年高一上学期期中质量监测政治试卷(含答案).pdf
- 重庆市第八中学校2025-2026学年七年级上学期期中历史试卷(无答案).pdf
- 长沙市岳麓实验中学高二期中考试物理-教师用卷.pdf
- 云南省普洱市第一中学2025-2026学年高三上学期期中考试历史试题(含答案).pdf
原创力文档


文档评论(0)