手机版

脚本的异步属性以非阻塞模式加载脚本

时间:2021-10-05 来源:互联网 编辑:宝哥软件园 浏览:

1.HTML5实现了脚本的异步属性。这个新属性允许在浏览器中以非阻塞模式加载js。此外,script还具有defer属性,该属性已在所有浏览器中实现(firefox和chrome早期版本除外)。IE在这方面做得很好,从一开始就支持一些属性。复制的代码代码如下://async Script async src=' http : dqoury . js ' async/Script//delay Script async src=' http 3360 dqoury . js ' delay/Script 2。async和delay的区别:带有async或delay的脚本将被立即下载,而不会阻塞页面解析,并且两者都提供了一个可选的onload事件处理程序,该程序将在脚本下载后被调用,以执行一些与此脚本相关的初始化工作。不同的是,async一旦下载就会立即执行(在window.onload事件之前),这并不能保证执行的顺序,而defer可以保证js按照它在页面中的顺序执行(在DOMContentLoaded事件之前)。3.为了解决浏览器兼容性的问题,可以用下面的代码来处理。复制代码如下:函数惰性加载(){ varelem=document . create element(' script ');elem . type=' text/JavaScript ';elem.async=真;elem.src='js/dquery.js?v=11 ';//对应的JS文件document . body . appendchild(elem);} if(window . addeventlistener){ window . addeventlistener(' load ',lazyload,false);} else if(window . attachevent){ window . attachevent(' on load ',lazy load);} else { window.onload=lazyload}因为是异步加载的,需要在window.onload事件中使用相应的js内容,直接写入页面会报告脚本错误,比如:

版权声明:脚本的异步属性以非阻塞模式加载脚本是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。