js002-在HTML中使用JavaScript
js002-在HTML中使用JavaScript
2.1 <script>元素
定义了以下6个属性
async: 可选。表示应该立即下载脚本,但不妨碍页面中的其他操作,比如下载其他资源或者等待加载其他脚本。只对外部脚本文件有效。(异步的) |
charset:可选。表示通过src属性指定的代码的字符集。 |
defer:可选。表示脚本可以延迟到文档完全被解析和显示之后再执行,只对外部脚本有效。IE7及其更早的版本也支持这个属性。(延迟,延期) |
src:可选。表示包含要执行代码的外部文件。 |
type:可选。可以看成是language的替代属性,表示编写代码使用的脚本语言的内同类型 |
<script type="text/javascript"></script>
使用<script>元素的方法有两种在:直接嵌入Javascript代码和包含外部Javascript文件
2.1.1直接嵌入Javascript代码:
<script type="text/javascript"> function sayhi(){ alert("hi~"); } </script> |
直接嵌入Javascript代码时,不要再代码中出现</script>,否则浏览器会认为那是一个结束标签,通过转义符可以解决这个问题
有问题: <script type="text/javascript"> function sayhi(){ alert("</script>"); } </script> |
解决问题: <script type="text/javascript"> function sayhi(){ alert("<\/script>"); } </script> |
2.1.2 引入外部Javascript文件
必须包含src属性,这个属性值是一个指向外部Javascript文件的链接。
<script type="text/javascript" src="example.js"> function sayhi(){ alert("hi~"); } </script> |
2.1.3标签的位置
一般放在页面的<head>元素里面
<!DOCTYPE html> <html> <head> <title>example page</title> <script type="text/javascript" src="example1.js"></script> <script type="text/javascript" src="example2.js"></script> </head> <body> (内容) </body> </html> |
放在所有内容的后面,这样浏览器在解析Javascript代码之前就把整个页面展示出来了,这样加快了打开速度。
<!DOCTYPE html> <html> <head> <title>example page</title> </head> <body> (内容) <script type="text/javascript" src="example1.js"></script> <script type="text/javascript" src="example2.js"></script> </body> </html> |
2.1.4延迟脚本 defer属性 (只适用于外部文件)
在<script>元素中使用defer属性,相当于告诉浏览器立即下载,单延迟执行。(在遇到</html>元素后才执行)
<!DOCTYPE html> <html> <head> <title>example page</title> <script type="text/javascript" defer="defer" src="example1.js"></script> <script type="text/javascript" defer="defer" src="example2.js"></script> </head> <body> (内容) </body> </html> |
在html文档中,要把defer属性设置为defer="defer"。
2.1.5异步脚本 async属性,用来改变处理脚本的行为,只适用于外部脚本
<!DOCTYPE html> <html> <head> <title>example page</title> <script type="text/javascript" async="async" src="example1.js"></script> <script type="text/javascript" async="async" src="example2.js"></script> </head> <body> </body> </html> |
第二个脚本可能会在第一个脚本之前执行,所以保证两个脚本的不相关性很重要。
在html文档中,要把sync属性设置为async="async"
2.1.6在xhtml中的用法
<script type="text/javascript"> function compare(a, b){ if (a < b) { alert("A is less than B"); }else if (a > b) { alert("A is greater than B"); }else{ alert("A is equal to B"); } } </script> |
用(<) 替换代码中的小于号(<)
如:if (a < b) |
2.2 嵌入代码与外部文件
最好适用外部文件,外部文件有以下优点:
可维护性:维护代码比较轻松 |
可缓存:浏览器能根据具体的设置缓存连接的所有外部Javascript文件 |
适应未来: |
2.3 文档模式
混杂模式和标准模式
2.4 <noscript>元素
在以下集中情况中会显示出来(一般放在body中)
浏览器不支持脚本 |
浏览器支持脚本,但是脚本被禁用 |
2.5
版权声明:未经作者同意,不得私自转载。http://www.cnblogs.com/lal-fighting/
js002-在HTML中使用JavaScript的更多相关文章
- JavaScript高级程序设计-(1)html中使用JavaScript
html中使用JavaScript 1.延迟脚本 script标签定义了defer属性,脚本会被延迟到整个页面都解析完毕后运行 详细内容如下: 2.异步脚本 script标签定义了async属性,as ...
- 在HTML中使用JavaScript元素
script属性<script async = async charset="utf-8" defer="defer" src="index.h ...
- 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:可选.表示立即下载脚本,不影响页面中 ...
- 在Swift中使用JavaScript的方法和技巧
本文作者Nate Cook是一位独立的Web及移动应用开发者,是继Mattt大神之后NSHipster的主要维护者,也是非常知名活跃的Swift博主,并且还是支持自动生成Swift在线文档的Swift ...
- Javascript高级程序设计——在HTML中使用Javascript
<script>元素 向HTML页面中插入Javascript的主要方法,就是使用<script>元素,<script>元素有六个属性: async:可选.表示应该 ...
- 2. javacript高级程序设计-在HTML中使用JavaScript
1.1 <script>元素 向HTML页面中插入JavaScript的主要方法,就是使用<script>元素,<script>元素定义了一下6个元素: (1). ...
- js-js实现,在HTML中使用JavaScript,基本概念
Js实现: 1.JavaScript实现的组成: 核心(ECMAScript):由ECMA-262定义,提供核心语言功能 文档对象模型(DOM)提供访问和操作网页内容的方法以及接口 浏览器对象模型(B ...
随机推荐
- LVS ip-tun服务器脚本
ifconfig tunl0 192.168.10.10 netmask 255.255.255.255 up route add -host 192.168.10.10 dev tunl0 ipvs ...
- JS日历制作获取时间
1.直接获取 var myDate = new Date(); myDate.getYear(); 获取当前年份(2位) myDate.getFullYear(); 获取完整的年份(4位,1970-? ...
- elasticsearch中如何高效的使用filter
这里有一篇很好的文章,很不错,翻译和整理了一下,英文不错的,建议直接看原文:http://euphonious-intuition.com/2013/05/all-about-elasticsearc ...
- 犀牛书的实例代码:给对象添加freeze, hide, 查询descriptors
/* * Define a properties() method in Object.prototype that returns an * object representing the name ...
- 51nod 1040最大公约数和(欧拉函数)
1040 最大公约数之和 题目来源: rihkddd 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注 给出一个n,求1-n这n个数,同n的最大公约数 ...
- poj1966 求顶点连通度
Cable TV Network Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 4563 Accepted: 2118 ...
- URI 中特殊字符处理
一.问题阐述 今天写 url 请求时,不管是get 请求还是 post 请求,如果参数中带有 + % # 等特殊符号,就无法正常获得参数 具体现象就是 用URL传参数的时候,用&符号连接,如果 ...
- java-commons-HttpClient超时设置setConnectionTimeout和setSoTimeout
问题 之前使用httpclient请求数据 源码方法: public static String doHttp(HttpMethod result, int timeout, String chars ...
- maven-修改本地仓库存放地址
eclipse中增加maven的插件,maven默认的本地库的路径是 ${user}/.m2/repository/下 一般windows用户的操作系统都安装在C盘 C:\Users\admin\.m ...
- 【BZOJ-1576】安全路径Travel Dijkstra + 并查集
1576: [Usaco2009 Jan]安全路经Travel Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 1044 Solved: 363[Sub ...