JavaScript异步加载的4种方式

原文连接 - http://www.cnblogs.com/huangcong/p/3747038.htmljavascript

方案1、$(document).ready()

  • 须要引入jqueryhtml

  • 兼容全部浏览器java

$(document).ready(function() {
    alert("加载完成!");
});

方案2、<script>标签的async="async"属性

  • async属性是HTML5新增属性,须要Chrome、FireFox、IE9+浏览器支持jquery

  • async属性规定一旦脚本可用,则会异步执行浏览器

  • async属性仅适用于外部脚本异步

  • 此方法不能保证脚本按顺序执行async

<script type="text/javascript" src="xxx.js" async="async"></script>

方案3、<script>标签的defer="defer"属性

  • defer属性规定是否对脚本执行进行延迟,直到页面加载为止code

  • 若是脚本不会改变文档的内容,可将defer属性加入到<script>标签中,以便加快处理文档的速度htm

  • 兼容全部浏览器blog

  • 此方法能够确保全部设置了defer属性的脚本按顺序执行

方案4、动态建立<script>标签

  • 兼容全部浏览器

(function(){
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = "http://code.jquery.com/jquery-1.7.2.min.js";
    var tmp = document.getElementsByTagName('script')[0];
    tmp.parentNode.insertBefore(script, tmp);
})();

(完)

相关文章
相关标签/搜索