在HTML中使用JavaScript

1. <script>元素

向HTML中插入JavaScript的主要方法就是使用<script>元素.。

HTML 4.01为<script> 定义了下列6个属性:

  • aync 可选。针对于外部脚本,表示应该立即下载脚本,但是不会影响到页面中的其他操作。比如下载其他资源或等待加载其他脚本。设置属性为aync="aync"。.

  • defer可选。针对于外部脚本,表示脚本可以延迟到文档完全被解析和显示之后,直到遇到 </html>再执行,设置属性为defer=“defer”,IE 4 ,Firefox 3.5,Safari 5,和Chrome最早使用。

  • charset可选。表示通过src属性指定的代码的字符集。由于大多数浏览器会忽略它的值,所以现在较少使用。

  • src可选。表示要包含要执行代码的外部文件。

  • language已经废弃,表示编写代码时候要是用的脚本语言。

  • type可选。可以看做是language的替代属性。表示编写代码所使用的脚本语言的内容类型,实际上,服务器在传送JavaScript文件时使用的MIME类型通常是application/x-javascript按约定俗成与浏览器的兼容性,type的值依然为text/javascript,默认值同样也是text/javascript

使用<script>元素的方式有两种:

  • 直接在页面中嵌入。

  • 嵌入包含外部JavaScript的文件。需要配合src 属性。与<img>标签的属性相似src属性指向当前html页面所在域之外的某个域中的URL。例如:

 <script type="text/javascript" src="ex.js"/>

表示将外部的文件名叫做ex的js文件嵌入了。扩展名可以省略。

 <script type="text/javascript" src="http://www.somewhere.com/file.js"></script>

表示将某个外部域中的file引入了。

只要不存在defer属性和aync属性,浏览器会按页面中的先后顺序依次解析。

标签的位置

  • 在文档的 元素中包含所有JavaScript文件。意味着必须等到全部的JavaScript代码都被下载,解析和执行完成以后,才可以呈现页面内容,这种方法会导致页面呈现表示延迟。

  • 将JavaScript引用放在<body> 元素中页面的内容后面。在解析JavaScript代码之前,页面内容完全呈现。

    在XHTML中的用法

可扩展文本标记语言,即XHTML是将HTML作为XML的应用而重新定义的一个标准,编写XHTML代码的规则比html的规则严格的多,会直接影响能否在嵌入JavaScript代码时使用<script/>标签。

较好的解决方法是用CDate片段来包含JavaScript代码。这样就可以包含无需解析的任意格式的文本内容,若浏览器不支持可以将CDate 注释掉,如下面的例子:

<script type=""text/javascript>
<![CDATA[
   function compare(a,b){
         if(a<b){
           alert("a is less than b");
         }
         else if(a>b){
           alert("a is granter than b");
         }
         else{
           alert("a is equal to b");
         }
    }

]]>
</script>

2. <noscript>元素
当浏览器不支持JavaScript时,可以用<noscript>元素表示替代的内容。

可以包含除了<script> 元素外的<body>中的任何HTML元素。

<noscript>元素中的内容会在以下两种情况下显示:

   1 浏览器不支持脚本。

   2 浏览器支持,但是脚本被禁用。

   在启用了脚本的情况下不会显示` <noscript>`元素中的任何内容。

猜你喜欢

转载自blog.csdn.net/qq_36647038/article/details/80324670