二
<script>元素
async 可选 应立即下载脚本,但不应妨碍页面中的其他操作
charset 可选 表示通过src属性指定的代码的字符集;
defer 可选 表示脚本可以延迟到文档完全被解析和显示之后执行。
language 已废弃
src 可选 表示包含要执行代码的外部文件;
type 可选 表示可以看成是language的替代属性;表示编写代码使
用的脚本语言的内容类型。(例如:text/javascript)
使用<script>方式
直接在页面嵌入<script>代码
<script type="text/Javascript">
function sayhi(){
alert("Hi");
}
<script>
通过<script>元素来包含外部js文件
<script type="text/javascript" src="example.js"></script>
通过<script>元素的src属性还可以包含来自外部域的javascript文件
例如
<script type="text/javascript" src="http://www.somewhere.com/afike.js">
</script>
无论如何包含代码,只要不存在defer和async属性,浏览器都会按照<script>元素
在页面中出现的先后顺序对其进行解析。
2.1.1
标签的位置:按照惯例,所有的<script>元素都应该放在<head>元素中
缺点:因为下载解析执行javascript文件,网页打开会有一定的延迟
解决:把< script>元素放在<body>中 浏览器的窗口网页打开将变快。
2.1.2
延迟脚本
在<script>标签中定义了defer属性:即浏览器立即下载 但延迟执行
延迟脚本放在 页面底部是最佳选择。
异步脚本:
在<script>标签中定义了async属性:
async只适用于外部脚本文件,并告诉浏览器立即下载文件,但标记为async的脚本
并不保证按照指定他们的先后顺序执行。
XHTML
在浏览器中编写代码时使用CData片段,并用js注释将其标注掉
就可以在所有的浏览器使用(能通过XHTML的验证,而且XHTML之前的浏览器也会平稳退化、
外部文件的优点
1.可维护性,可缓存,适应未来。
文档模式
标准模式,混杂模式。
<noscript>元素,当浏览器不支持js时让页面平稳的退化。