首页 > 作文

async和DOM Script文件加载比较

更新时间:2023-04-06 22:15:46 阅读: 评论:0

目前我用demo.js作为执行文件操作.代码:

var now = 什么是专业function() { return +(new date()); }var t_s = now();while(now() - t_s < 2000) { }

用sleep.php作为请求文件操作。代码:

<?php  sleep(3);  echo 'var bb';?>

1. 一般script标签加载

<script src="demo.js"></script><script src="sleep.php"></script>

在浏览器加载情况: 图1-1. 下载阻塞domready 图1-2. 执行阻塞domready

图1-1. 下载阻塞domready

图1-2. 执行阻塞domready

2. async属性

大学军训口号

async是html5中新增的属性,它的作用是能够异步下载脚本文件,不阻塞domready。

每一个async属性的脚本都在它下载结束之后立刻执行,同时会在window的load事件之前执行。所以就有可能出现脚本执行顺序被打乱的情况

支持async浏览器: firefox 3.6+, ie 10+, chrome 2+, safari 5+, ios 5+, android 3+

<script src="demo.js" async></script&学生个人简介gt;<script src="sleep.php" async></script>  

在浏览器中加载的情况:

图2-1 异步下载 不阻塞domready 阻塞load事件

图2-2 执行阻塞load事件

图2-3 ie9不支持async属性下载阻塞domready

3. dom script动态加载

文档对象模型(dom)允许您使用 javascript 动态创建 html 的几乎全部文档内容。 script元素与页面其他元素一样,可以非常容易地通过标准 dom 函数创建:

var loadscript = function(url) { var s = document.createelement('script'); s.type = 'text/jav2017年高考分数ascript'; s.async = 'true';形象推广 s.src = url; document.getelementsbytagname('head')[0].appendchild(s); }// 加载js文件脚本loadscript('sleep.php');loadscript('demo.js');

在浏览器中加载的情况:

图3-1 下载阻塞load事件

图3-2 执行阻塞load事件

图3-3 ie9不阻塞load事件

小结

async和script动态加载在现代浏览器中加载的情况是一致的。前者使用简单,后在兼容性方面更好。 异步加载文件还有很多方法,ajax(会受到同源限制)、iframe、img…

本文发布于:2023-04-06 22:15:44,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/795452acbb9db611122c5e83e16c9cc2.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:async和DOM Script文件加载比较.doc

本文 PDF 下载地址:async和DOM Script文件加载比较.pdf

标签:加载   事件   情况   脚本
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图