在HTML中使用JavaScript元素
script属性
<script async = async charset="utf-8" defer="defer" src="index.html" type="text/javascript"></script>
async:可选,表示立即下载下载脚本,但是不妨碍页面中的其他操作,只对外部脚本文件有效,不保证按照指定它们的先后顺序执行
charset:可选,表示通过src属性指定的代码的字符集,大多数浏览器忽略该值
defer:可选,表示脚本可以延迟到文档完全被解析和显示之后在执行,只对外部脚本有效,立即下载,但是延迟执行,最好只包含一个延迟脚本,按照先后顺序执行
src:可选,表示要执行代码的外部文件
type:可选,表示编写代码使用的脚本语言的内容类型 <!--使用script元素的方式-->
<!--1.直接在页面中嵌入javaScript代码-->
<!--只需要为script指定type属性-->
<!--包含的元素被从上到下依次解释,在解释器对script元素内部的所有代码求值完毕以前,页面中的其余内容都不会被显示,除非指定特定的属性-->
<!--不能再代码中的任何地方出现</script>字符串-->
<script type="text/javascript">
function sayScript() {
alert("<\/script>");
}
</script>
<!--以上代码必须要为代码中的script添加转义字符串,否则会出错,因为当浏览器遇到字符串</script>时,会认为那是结束的标签--> <!--2.包含外部的javaScript文件-->
<!--注意:在带有src属性的<script>元素中不能再在标签中含有js代码,如果包含了额外的代码,则只会下载并执行外部的脚本文件,嵌入的代码会被忽略-->
<!--src可以包含外部域的地址,例如,可以为src添加完整的地址 src="http://www.baidu.com"--> <!--总结:无论如何包含代码,只要不存在defer,async属性,浏览器都会按照script元素在页面中出现的先后顺序对它们依次进行解析--> 标签的位置
现代web浏览器应用程序一般是把js引用全部放在body元素中的页面内容的后面,这样,在解析包含的js代码之前,页面的内容将会完全呈现在浏览器中 不支持js浏览器
对不支持js的浏览器就将js代码包含在html的注释中--不推荐
使用noscript标签 文档模式:若没有指定文档类型的声明,则所有的浏览器都会默认开启混杂模式
混杂模式:使IE的行为与IE5相同,不推荐,由于在不同的浏览器中的行为差异非常大,如果不适用一些hack技术,跨浏览器的行为没有一致性可言 标准模式:使IE的行为更接近标准行为 小结
在包含外部的js文件时,必须将src属性设置为指向相应文件的URL,而这个文件即可以是包含他的页面位于同一个服务器上的文件,也可以是外部文件
所有的script元素都会按照他们在页面上面出现的先后顺序依次被解析,在不使用defer和async属性的情况下,只有在解析玩前面的 代码之后才会开始解析后面的代码
由于浏览器会先解析不使用defer属性的script中的元素中的代码,然后再解析后面的内容,所有一般把srcipt元素放在页面的后面,Body标签的前面
使用defer属性可以让脚本在文档完全呈现之后再执行,延迟脚本总是按照指定它们的顺序执行
使用async属性可以表示当前脚本不必等待其他脚本,也不必阻塞文档的实现,不能保证异步脚本按照他们在文档中出现的先后顺序执行
使用noscript元素可以指定在不支持脚本的额浏览器中显示替代内容,但在启用了脚本的情况下,浏览器不会显示noscript元素中的任何内容
下面是包含script结束时的错误代码

在HTML中使用JavaScript元素的更多相关文章
- javascript中获取dom元素的高度和宽度
javascript中获取dom元素高度和宽度的方法如下: 网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网 ...
- javascript中获取dom元素高度和宽度
javascript中获取dom元素高度和宽度的方法如下: 网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网 ...
- js | javascript中获取dom元素的高度和宽度
javascript中获取dom元素高度和宽度的方法如下: 网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网 ...
- JS事件 什么是事件?JavaScript 创建动态页面。事件是可以被 JavaScript 侦测到的行为。 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件。
什么是事件 JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 比如说,当用户单击 ...
- JavaScript中获取HTML元素的方式
JavaScript中获取HTML元素的方式 1.使用id方式获取元素,返回一个具体对象 document.getElementById(id名) 2.使用className方式获取元素,返回类数 ...
- JavaScript中的获取元素的方法
通过id获取元素 document.getElementById(id名字) 通过标签获取元素 document/元素.getElementsByTagName(标签名) 通过css选择器获取元素 d ...
- 2在HTML中使用JavaScript
像HTML页面中插入JavaScrip的主要方法,就是使用<script>元素.HTML4.01为<script>定义了6个属性:async:可选,表示应该立即下载脚本,当不妨 ...
- javascript高级编程3第二章:在html中使用javascript
2.1 <script>元素 向html页面中插入javascript的主要方法,就是使用<script>元素.这个元素被加入到正式的html规范中.html4.01为< ...
- JS高程2.在HTML中使用Javascript(1)
1.使用<script>元素向HTML页面中插入Javascript HTML4.01中<script>标签有6个属性: (1)async:可选.表示立即下载脚本,不影响页面中 ...
随机推荐
- windows安装zookeeper-单机模式
zookeeper下载地址:http://zookeeper.apache.org/releases.html#download 本次使用的是3.4.9版本 前提:请安装JDK 安装: 创建安装目 ...
- pycharm svn服务器访问不了的问题。
昨天使用pycharm访问svn服务器的时候一直登陆不上. 总结一下遇到的svn的问题. 1.用户名密码错误.简单致命, 2.svn访问权限,这个是svn服务器那边可以设置的. 3.svn路径拼写错误 ...
- C# 构建动态树
public class Tree { public Guid Id { get; set; } public string Url { get; set; } public Guid? Parent ...
- 坑爹的微信支付v3,其实没有那么坑
http://www.cnblogs.com/zskbll/p/wxpay.html 研究微信开发一年多了,每个新接口,都会第一时间进行研究.微信支付开放很久,一直没机会接触到支付接口,等了好久终于从 ...
- Sicily 1444: Prime Path(BFS)
题意为给出两个四位素数A.B,每次只能对A的某一位数字进行修改,使它成为另一个四位的素数,问最少经过多少操作,能使A变到B.可以直接进行BFS搜索 #include<bits/stdc++.h& ...
- python raise a string exception is deprecated
python不允许raise 一个内建的string 对象.所以就崩溃,可以先将其转换成其他string,比如赋值.
- Windows无线网“无法连接到这个网络”的解决办法
最近我的笔记本(Win10系统)连接无线网时总是出现"无法连接到这个网络"的错误.为此折腾了一天,通过各种百度,终于找到了适合我的解决办法,在此记录一下. 问题描述 最近因为宿舍的 ...
- hdu 1281 二分图最大匹配
对N个可以放棋子的点(X1,Y1),(x2,Y2)......(Xn,Yn);我们把它竖着排看看~(当然X1可以对多个点~) X1 Y1 X2 Y2 X3 Y3 ..... Xn Yn ...
- ffmpeg+x264 Windows MSVC 静态编译
尝试ubuntu和win下mingw编译版本,但都在Vistual Studio链接时因为依赖 libgcc.a, libmingw.a, libmingwex.a 会与mscrt 有符号冲突. 最后 ...
- asp.net 文件下载(txt,rar,pdf,word,excel,ppt)
aspx 文件下载说起来一点都不难,但是在做的过程中还是遇到了一些小小的问题,就是因为这些小小的问题,导致解决起来实在是太难了,其中一个就是Response.End();导致下载文件出现线程终止的情况 ...