第二章 在HTML中使用JavaScript

要想把JavaScript放到网页中,就必须涉及到Web的核心语言HTML。向HTML页面中插入JavaScript的主要方法,就是使用<script>元素。下面我来归纳一下<script>标签比较重要的属性。

async属性(定义为异步脚本的属性):浏览器执行到这里时,在下载js脚本的同时会继续往下解析页面,比如下载其他资源资源,解析html或等待其他待加载的脚本等(异步执行js脚本)。当js脚本下载完了,才会暂停页面解析,立即执行js脚本;

defer属性(定义为延迟脚本的属性):浏览器执行到这里时,在下载js脚本的同时会继续往下解析页面,比如下载其他资源资源,解析html或等待其他待加载的脚本等(异步执行js脚本)。当文档完全被解析和显示后再执行!

注意:

①在现实中,如果存在多个异步脚本(延迟脚本),async(defer)属性并不能保证脚本间按先后顺序执行;在我们的页面中,最好不要出现多个异步脚本(延迟脚本);

②用<script&></script>嵌入JavaScript代码时,JavaScript代码中任何地方出现</script>字符串时都要转意,否则解析器会默认结束JavaScript代码的解析。特殊字符串转义,如下图:

字面量 含义
\' 单引号('),在用单引号表示的字符串中使用。例如:'He said, \'hey\' !'
\" 单引号("),在用双引号表示的字符串中使用。例如:"He said, \"hey\" !"
\& 和好
\\ 反斜杠
\n 换行符
\r 回车符
\t 制表符
\b 退格符
\f 换页符
\xnn 以十六进制代码nn表示一个字符(其中n为0-F)。例如,\x41表示"A"
\unnn 以十六进制代码nnn表示的一个Unicode(其中n为0-F)。例如,\u3a3表示希腊字符Σ

③HTML页面正常情况下是按顺序进行的,一行一行的执行,执行到<script>标签时就会停止继续向下执行,下载JavaScript代码或直接执行JavaScript代码。这样就会让页面显示渲染一部分卡一下执行JavaScript再渲染,给用户的体验很差!所以建议JavaScript代码尽量放在HTML页面最下方(JavaScript代码实在是不能放在最下面时可以使用window的onload事件等)

《JavaScript高级程序设计》笔记二的更多相关文章

  1. 简明python教程笔记

    自然字符串 如果你想要指示某些不需要如转义符那样的特别处理的字符串,那么你需要指定一个自然字符串.自然字符串通过给字符串加上前缀r或R来指定. r"Newlines are indicate ...

  2. 《简明python教程》笔记一

    读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info  安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...

  3. 学习笔记《简明python教程》

    学习笔记<简明python教程> 体会:言简意赅,很适合新手入门 2018年3月14日21:45:59 1.global 语句 在不使用 global 语句的情况下,不可能为一个定义于函数 ...

  4. 简明Python教程 ~ 随书笔记

    本文是阅读<简明Python教程>所做的随书笔记,主要是记录一些自己不熟悉的用法,或者所看到的比较有意思的内容,本书英文版A Byte of Python, 中文译版 简明Python教程 ...

  5. 笔记|《简明Python教程》:编程小白的第一本python入门书

    <简明Python教程>这本书是初级的Python入门教材,初级内容基本覆盖,对高级内容没有做深入纠结.适合刚接触Python的新手,行文比较简洁轻松,读起来也比较顺畅. 下面是我根据各个 ...

  6. 《简明Python教程》学习笔记

    <简明Python教程>是网上比较好的一个Python入门级教程,尽管版本比较老旧,但是其中的基本讲解还是很有实力的. Ch2–安装Python:下载安装完成后,在系统的环境变量里,在Pa ...

  7. 简明Python教程自学笔记——命令行通讯录

    [前言]学习Python已经有一段时间了,相关的书籍资料也下载了不少,但是没有一本完整的看完,也没有编出一个完整的程序.今天下午比较清闲就把<简明Python教程>看了一遍,然后根据书里面 ...

  8. python读书笔记-《简明python教程》上

    1月15日 <简明python教程>上 基本结构: 基础概念+控制流+函数+模块+数据结构+面向对象+I/O+异常+标准库+其他   1.概念 1-0    退出python linux: ...

  9. (原+转)简明 Python 教程:总结

     简明 Python 教程 说明:本文只是对<简明Python教程>的一个总结.请搜索该书查看真正的教程. 第3章 最初的步骤 1. Python是大小写敏感的. 2. 在#符号右面的内容 ...

  10. 【转】简明 Python 教程

    原文网址:http://woodpecker.org.cn/abyteofpython_cn/chinese/ 简明 Python 教程Swaroop, C. H. 著沈洁元  译www.byteof ...

随机推荐

  1. 二、Windows基础数据类型

    六.Windows Data Types 简介: 6.1.这些数据类型都是C语言数据类型的再次的进行包装. 6.2.因为考虑到如果使用的是C中的基础数据类型可能无法表示,想表示的精准的含义. 6.3. ...

  2. [刷题]算法竞赛入门经典 3-4/UVa455 3-5/UVa227 3-6/UVa232

    书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 题目:算法竞赛入门经典 3-4/UVa455:Periodic Strings 代码: //UVa455 #inclu ...

  3. Alamofire源码解读系列(十二)之请求(Request)

    本篇是Alamofire中的请求抽象层的讲解 前言 在Alamofire中,围绕着Request,设计了很多额外的特性,这也恰恰表明,Request是所有请求的基础部分和发起点.这无疑给我们一个Req ...

  4. iOS开发中,info.plist配置用户隐私的保护

    info.plist 配置[用户隐私的保护]   >= iOS10 Privacy - Bluetooth Peripheral Usage Description --> App需要您的 ...

  5. 点击文字选中checkbox

    <html> <head> <title>test</title> <meta http-equiv="content-Type&quo ...

  6. NIO原理剖析与Netty初步----浅谈高性能服务器开发(一)

    除特别注明外,本站所有文章均为原创,转载请注明地址 在博主不长的工作经历中,NIO用的并不多,由于使用原生的Java NIO编程的复杂性,大多数时候我们会选择Netty,mina等开源框架,但理解NI ...

  7. New Adventure----GUI Design Studio

    新建项目工程    File->New Project 新建设计文件    Project->New Design 单个设计文件的页面,F9运当前设计页面   页面控件中有绿色包围的控件为 ...

  8. 《Android进阶》之第四篇 ViewPagerIndicator的使用

    1.先将这个开源框架下载到本地: Administrator@QH-20141231RFQJ /d/hixin $ cd ViewPagerIndicator/ Administrator@QH-20 ...

  9. LR11 scan correlation 卡死解决方案

    LR11 scan correlation 卡死解决方案 笔者在录制脚本时是勾选Enable correlation during recording的,导致后续每次脚本回放都会弹出scan corr ...

  10. 写给Android App开发人员看的Android底层知识(6)

    (十一)BroadcastReceiver BroadcastReceiver,也就是广播,简称Receiver. 很多App开发人员表示,从来没用过Receiver.其实吧,对于音乐播放类App,用 ...