在HTML中使用javascript

来源:互联网 发布:手机跑码软件 编辑:程序博客网 时间:2024/05/17 17:18
在HTML中使用JavaScript
<script元素>
向HTML页面中插入javascript的主要方法,就是使用<script>元素。
HTML4.01为<script>定义了下列6个属性:
async:可选。表示应该立即下载脚本,但不应妨碍页面中的其他操作,比如下载其他资源或等待加载其他脚本。只对外脚本文件有效。
charset:可选。表示通过src属性指定的代码的字符集。由于大多数浏览器会忽略它的值,因此很少有人用。
defer:可选。表示脚本可以延迟到文档完全被解析和显示之后再执行。只对外部脚本文件有效。IE7及更早版本对嵌入脚本也支持这个属性。
language:已废弃。
src:可选。表示包含要执行代码的外部文件。
type:可选。可以看成是language 的替代属性;表示编写代码使用的脚本语言的内容类型(也成为MIME类型)。

使用<script>元素的两种方式:
①直接在页面中嵌入javascript代码
只须为<script>指定type属性。然后,像下面这样吧javascript代码直接放在元素内部即可:
<script type="text.javascript">
function sayHi(){
alert("Hi");
}
</script>
此代码被从上到下执行,在解释器对<script> 元素内部的所有代码求值完毕以前,页面中的其余内容都不会被浏览器加载或显示。


注意:在使用<script> 嵌入javascript代码时,记住不要在代码中的任何地方出现"</script>"字符串。
例如:
<script type="text.javascript">
function sayHi(){
alert("</script>");
}
</script>
上面的代码就会产生一个错误。
解决方法:通过转义字符"\"解决这个问题
<script type="text.javascript">
function sayHi(){
alert("<\/script>");
}
</script>



②包含外部javascript文件
如果要通过<script>元素来包含外部javascript文件,那么src属性就是必需的。这个属性的值是一个指向外部javascript文件的链接。
<script type="text/javascript" src="example.js"></script>


如果是在XHTML文档中,也可以省略前面的示例代码中结束</script> 标签,例如:
<script type="text/javascript" src="example.js"/>
但是,不能在HTML文档中使用这种语法,原因是这种语法不符合HTML规范,而且也得不到某些的正确解析。


注意:带有src属性的<script>元素不应该在其<script> </script>标签之间再包含额外的javascript代码。如果包含了嵌入的代码,则只会下载并执行外部文件


src属性还可以包含来自外部域的javascript文件


如果想包含来自不同域的代码①要么你是那个域的所有者②要么那个域的所有者值得信赖。


一、所有<script> 元素都会按照他们在页面中出现的先后顺序依次被解析。在不使用defer和async属性的情况下,只有在解析完前面<script>元素中的代码后,才会开始解析后<script>元素中的代码。
二、由于浏览器会先解析完不使用defer属性的<script> 元素中的代码,然后再解析后面的内容,所有一般应该吧<script>元素放在页面最后,即主要内容的后面,</boby>标签前面。
三、使用defer属性可以让脚本在文档完全呈现之后再执行。延迟脚本总是按照指定他们的顺序执行。
四、使用async属性可以表示当前脚本不必等待其他脚本,也不必阻塞文档呈现。不能保证异步脚本按照他们在页面中出现的顺序执行。
另外,使用<noscript>元素可以指定在不支持脚本的浏览器中显示的替代内容。但在启用了脚本的情况下,浏览器不会显示<noscript> 元素中的任何内容。


原创粉丝点击