zoukankan      html  css  js  c++  java
  • javascript之js加载理解

    文档加载事件意义,看下面例子

    document.addEventListener('DOMContentLoaded', function() {
    })
    $(document).ready(function() {
    })
    //文档解析完(只解析domTree,不加载资源)
    
    window.onload = function() {
    }
    //文档加载完(包括img的src,所有资源加载完)

    异步加载js
    1.defer异步加载,但是要到dom文档全部解析完才会被执行。只有IE能用,也可以将代码写到内部
    2.async异步加载,加载完就执行,async只能加载外部脚本,不能把js写在script标签里面
    1.2执行时不阻塞页面
    3.创建script,插入到DOM中,加载完毕后callBack(推荐)

    封装异步加载script

    function loadScript(url, callback) {
      var script = document.createElement('script')
      script.type = 'text/javascript'
      if(script.readyState) {
        script.onreadystatechange = function() {
          //IE
          if(script.readyState == 'complete' || script.readyState == 'loaded') {
            callback()
           }
         }    
      }else {
        script.onload = function() {
        //safari chrome firefox opera
          callback()
        }
      }
      script.src = url
      document.body.appendChild(script)
    }

    end !!!

  • 相关阅读:
    CentOS7安装MySQL5.7
    .gdbinit文件配置
    Linux 动态库加载
    GDB常用调试命令(二)
    git删除缓存区中文件
    git添加空文件夹
    Linux 打开core dump功能
    C++ 预处理器
    C++ 模板
    C++ 命名空间
  • 原文地址:https://www.cnblogs.com/lyjfight/p/13831721.html
Copyright © 2011-2022 走看看