zoukankan      html  css  js  c++  java
  • 重操JS旧业第一弹:Script与JS加载

     

    不管js被包装成什么样子,最终交给浏览器执行的js都是原生的,都离不开原生js的原理。

    Script标签纸html中用来加载js的标签,我们知道js可以是来自外部,本地,或者内部一段代码,在这里只讨论来自外部的加载,对于一个随时进行网络数据交换的浏览器而言,网络请求必然是异步执行的,自然的js文件一般来说异步执行比较好,不容易造成UI卡顿,但是Script标签默认加载js是同步,阻塞式的,也就是说默认情况下浏览器按照从上至下,从左自右的方式解释执行脚本,对于同步请求js文件会造成js文件下载完成才真正渲染UI,这点道理非常容易理解。提高Web用户体验?

    1 异步下载js文件,这里可以在script标签内部使用async,表示异步下载该文件:<script src="xxx.js" async>

    2 延迟加载,这里使用defer关键字,表示整个文档html元素加载完成才开始下载js文件,但这并不意味着一定在文档load事件之前或者之后发生,<script src="xxx.js"  defer>,如果有多个这样的js延迟加载他们的

    顺序也不确定,所以一般来说defer使用得较少

    3 ui加载完成开始加载js,这里很简单,直接将<script src="xxx.js">放到文档末尾就可以了

    script也有loaded事件该事件表示js文件加载完成后触发,自然的我们可以监听这个事件做一些初始化工作 

    知识点:同步,异步

  • 相关阅读:
    Xcode 8.2 想使用插件 怎么办? 教你科学的使用插件
    JSAPI_Ticket签名
    Java中HashMap,LinkedHashMap,TreeMap的区别[转]
    微信支付开发,再次签名,APP调用
    微信支付开发,统一下单
    android studio安装插件
    java实现mysql数据库的备份及还原
    java项目中读取src目录下的文件
    eclipse增加浏览器chrome
    cd 命令
  • 原文地址:https://www.cnblogs.com/rjjs/p/5857106.html
Copyright © 2011-2022 走看看