HTML4.01为<script>元素定义了6个属性:
分别为async,defer,src,type,language,charset.这6个属性均为可选属性,重点理解async和defer用法:
1.aysnc:(异步脚本)立即下载脚本,但不妨碍页面中其他操作。----------只对外部脚本有效。在XHTML中应该书写为async="async"。异步脚本一定先于页面的load事件执行,但可能会在DOMContentLoaded事件触发前或后执行。
2:defer:(延迟脚本)表示脚本可以延迟到遇到</html>标签时才执行。也就是说脚本可以被延迟到整个页面都解析完毕后再运行。设置该属性后会立即下载脚本但延迟执行。
-----------只对外部脚本有效,最好只对一个外部脚本设置defer属性。
外部js脚本区别于嵌入javascript代码,其优势在于:
1.能够使代码更清晰,简介明了,对于某个功能的js代码只需找到相应的外部脚本文件,便于维护。
2.对于多个页面相同功能只需使用同一外部js文件,这样这个文件只需下载一次,最终加快页面加载速度。
通常将css文件,script文件的引用都放在<body>标签中的底部,以便于更快速的将页面内容显示在浏览器中,优化了用户体验性能。