安卓webview快速加载网页研究提速(一级加速)

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
var ii = 0;
 $.ajax({
url:"/jquery/test1.txt",
async:false,
success:function(data)
{
   for(var i=0;i<10000;i++){
     ii ++
   }
}
})

$(document).ready(function(){
  alert(ii);
});
 
</script>
</head>
<body>

<div id="myDiv"><h2>通过 AJAX 改变文本rerer</h2></div>
<button id="b01" type="button">改变内容</button>

</body>
</html>

1.若是同步请求,当ii加载到10000时才会显示网页,若是异步请求,ii显示为0时就加载网页,不会影响整个网页的加载

结论:ajax是同步请求测试验证:测试发现要在网页上看到具体内容是for循环代码执行完成后才显示的

             ajax是异步请求测试验证:测试发现网页显示不必等待for循环加载完成后才去显示网页,也就是异步请求不影响网页加载


可以想一想,JS代码的执行要先于HTML DOM模型的构件,没有DOM模型,浏览器应该不会知道如何渲染出网页的,

所以同步请求,会严重阻止网页的展示

测试还发现如果加载的JS文件如果一直获取不到,整个页面会白屏卡在那里一直等到JS加载呀

http://blog.163.com/hero_213/blog/static/398912142012112765625110/

http://blog.csdn.net/mynote/article/details/40922043

1.解析HTML结构。
2.加载外部脚本和样式表文件。
3.解析并执行脚本代码。(已验证:例如上面的验证)
4.构造HTML DOM模型。
5.加载图片等外部文件。
6.页面加载完毕。

注意:页面加载和渲染是同时进行的哦

webview可以设置阻止图片加载,在第六步骤之后再去放开图片加载,另外对于网页设计师傅,尽量把所有的JS延迟加载,

否则影响webview页面加载完毕事件的触发,影响图片请求,通过这种方式,可以快速展示网页基本形式之后再来

加载JS和图片资源,提高用户的体验!


我们暂且把上面的方案称为一级加速方案吧,下一节继续给我们的webview提速


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值