2.1 <script>元素
script元素有下面八个属性:
1.async:应该立即开始下载脚本,但是不能阻止其他页面的动作.只对外部脚本有效
2.charset:使用src属性指定的代码字符集.一般不用
3.crossorigin:配置请求相关的CORS,默认不使用\
4.defer:表示脚本可以等到文档完全被解析和显示之后才执行
5:integrity:校验,可以确保部分内容分发网络DCDN不会提供恶意内容
6.language:废弃
7.src:表示要执行代码的外部文件
8.type:替代language,表示代码块中脚本语言的内容类型(也叫MIME类型)
2.1.1 标签位置
<script>标签应该放在<body>标签中,页面元素后
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- 这里是页面内容 -->
<script></script>
</body>
</html>
2.1.2 推迟执行脚本
defer
<script defer></script>
对于XHTML文档 defer 应该为 defer="defer"
2.1.3 异步执行脚本
async会让浏览器立刻开始下载,但是并不能保证所有async元素按照顺序下载
2.1.4 动态加载脚本
可以利用DOM.API动态添加
2.2 行内代码和外部文件
推荐吧JS代码放在外部文件
有可维护性,缓存,适应未来等好处
2.4 <noscript>
在禁止使用javascript的浏览器,会显示在<noscript>中的内容