2.1 <script> 元素
向HTML页面中插入JavaScript的主要方法,就是使用<script>元素。
HTML 4.01为<script>定义了下列6个属性:(可选)
async:立即下载脚本,不应妨碍页面中的其他操作,只对外部脚本文件有效。
charset:通过src属性指定的代码的字符集。被大多数浏览器忽略,很少用。
defer:延迟脚本到文档完全解析和显示后再执行,只对外部脚本文件有效。
src:表示包含要执行代码的外部文件。
type:表示编写代码实用的脚本语言的内容类型(MIME类型),type=text/javascript。
使用<script>元素的方式有两种:
直接在页面中嵌入JavaScript代码,只需为<script>指定type属性,然后将JavaScript代码直接放在<script>元素内部,JavaScript代码将被从上至下依次解释;代码中不能出现"</script>"字符串,需分割为"<\/script>"。
通过<script>元素来包含外部JavaScript文件,src属性的值指向外部JavaScript文件的链接,这个文件可以是与包含它的页面位于同一个服务器上的文件,也可以是其他任何域中的文件;外部文件带有.js扩展名。
2.1.1 标签的位置
一般将全部JavaScript引用放在<body>元素中页面的内容后面,</body>标签前面。
2.1.2 延迟脚本
在<script>元素中设置defer属性,立即下载但延迟执行,最好只包含一个延迟脚本。
2.1.3 异步脚本
async的脚本不保证按照指定它们的先后顺序执行,因此要确保脚本之间互不依赖。
2.1.4 在XHTML中的用法(跳过)
2.1.5 不推荐使用的语法
在不支持JavaScript的浏览器中,将JavaScript代码包含在一个HTML的注释中<!-- -->。
2.2 嵌入代码与外部文件
最好的做法是尽可能使用外部文件来包含JavaScript代码。优点是:可维护性、可缓存、适应未来。
2.3 文档模式
混杂模式、标准模式、准标准模式
<!DOCTYPE html>//HTML5文档类型声明
2.4 <noscript>元素
当浏览器不支持JavaScript时让页面平稳退化,可以包含能够出现在<body>中的任何HTML元素,<script>除外。