<script>在HTML4.01中被定义了6个属性:
1.async:表示立即下载脚本,但不得妨碍页面中其他操作。只对外部脚本文件有效。
2.charset:很少用。表示通过src属性指定的代码的字符集。(大多数浏览器会忽略,因此本属性很少用)
3.defer:表示脚本可以延迟到文档完全被解析和显示之后再执行。只对外部脚本文件有效。
4.language:已废弃。表示编写代码使用的脚本语言。
5.src:表示包含要执行代码的外部文件。
6.type:可看成language的替代属性,此属性不是必需的,若未指定,默认值text/javascript
注意:
1.在用<script>嵌入代码时,不要在代码的任何地方出现“</script>”字符串,如需显示则要用转移字符“\”转义。如alert("<\/script>");
2.链入外部文件时,<script type="text/javascript" src="example.js"></script>,在XHTML中可省略</script>改为<script type="text/javascript" src="example.js" />,但是在HTML文档中不能使用这种语法。
3.在传统做法中,所有<script>元素都应放在<head>中,但是会导致呈现页面出现延迟。为避免这个问题,现代web应用程序一般把全部javascript引用放在body元素中页面内容的后面。
4.延迟脚本defer:<script type="text/javascript" src="example.js" defer="defer"></script> 脚本会被延迟到整个页面都解析完成后再运行。相当于告诉浏览器立即下载脚本文件,但延迟解释执行。且defer属性只对外部脚本文件有效。(有些浏览器可能会忽略这个属性,因此将脚本放在页面底部仍是最佳选择)
5.异步脚本async:<script type="text/javascript" src="example.js" async="async"></script>只适用于外部脚本。告诉浏览器立即下载文件,但标记此属性的脚本不保证按先后顺序执行。用此属性的目的是不让页面等待脚本的下载和执行,从而异步加载页面其他内容。
6.使用外部js文件的优点:可维护性、可缓存
7.文档模式:通过使用文档类型doctype切换实现。最初两种文档模式:1.混杂模式:让IE的行为与IE5相同。2.标准模式:让IE行为更接近标准行为。后来IE又提出一种准标准模式。虽然不同模式主要影响css的呈现,但也会影响javascript的解释和执行。如果文档开始处没有文档类型声明,则所有浏览器默认开启混杂模式。但这样强烈不推荐,因为不同浏览器在混杂模式下差异很大,跨浏览器一致性很糟糕。
8.<noscript>元素:当浏览器不支持脚本或脚本被禁用时显示。若启用了脚本,则不会显示其中任何内容。