一、JavaScript是一种专为与网页交互而设计的脚本语言,它的的组成
ECMAScript(核心) DOM(文档对象模型) BOM(浏览器对象模型)
1.1ECMAScript
ECMA-262定义的ECMAScrip与Web浏览器没有依赖关系,ECMA-262定义的只是这门语言的基础,提供核心语言功能
ECMAScript是通过ECMA-262标准化的脚本语言,ECMA-262规定语言的:语法、类型、语句、关键字、保留字、操作符、对象
1.2 DOM(Document Object Modle)
DOM是针对XML但是经过扩展用于HTML的应用程序编程接口(API,Application Programming Interface),提供访问和操作网页内容的方法和接口
DOM把整个页面映射为一个多层节点结构,HTML或者XML等页面中的每个组成部分都是某种类型的节点,这些节点又包含不同类型的数据。
1.3 BOM(Bower Object Modle)
控制浏览器显示的页面以外的部分,BOM只处理浏览器窗口和框架,提供与浏览器交互的方法和接口
二、<script>元素
2.1引用javascript文件
外部引用javascript文件:
复制代码 代码如下:
<script type="text/javascript" src="/UploadFiles/2021-04-02/XX.js">
页面嵌入javascript代码
复制代码 代码如下:
<script type="text/javascript">
//javascript代码
</script>
包含在<script>元素内部的JavaScript代码将被从上至下依次解释
2.2 <script>元素的属性
defer延迟脚本:告诉浏览器立即下载,脚本会被延迟到整个页面都被解析完才执行, defer只适用于外部引入的脚本文件
复制代码 代码如下:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example.js">
</head>
</html>
虽然<script>标签位于<head>标签内,但是demo.js会延迟到浏览器遇到</html>后才执行。
async异步脚本:必让页面等待脚本的下载和执行,从而异步加载页面其他内容
同defer一样只适用于外部引入的脚本文件,async告诉浏览器立即下载文件,但与defer不同的是标记不async脚本并不保证按照指定它们的先后顺序执行,建议异步脚本不要在加载期间修改DOM
复制代码 代码如下:
<!--异步脚本-->
<script type="text/javascript" async="async" src="/UploadFiles/2021-04-02/example1.js">
<script type="text/javascript" async="async" src="/UploadFiles/2021-04-02/example2.js">
2.3 <noscript>元素的属性
复制代码 代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<!--延迟脚本-->
<scripttype="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example.js">
<!--导部脚本-->
<script type="text/javascript" async="async" src="/UploadFiles/2021-04-02/example1.js">
<script type="text/javascript" async="async" src="/UploadFiles/2021-04-02/example2.js">
</head>
<body>
<noscript>
<p>本页显示需要浏览器支持(启用)Javascript
</noscript>
</body>
</html>
浏览器不支持脚本
浏览器支持脚本,但脚本被禁用,浏览器就会显示<noscript>中的内容
这个页面会在脚本无效的情况下,向用户显示一条信息,而在启用了脚本的浏览器中,用户永远也不会看到它
以上就是本文的全部内容了,希望大家能够喜欢,本系列将持续更新。
JavaScript,概述
更新动态
- 张玮伽《微风细雨DSD》发烧大碟[WAV+CUE][1.1G]
- 群星《2024好听新歌14》十倍音质 U盘音乐 [WAV分轨][966M]
- s14全球总决赛T1战队队员都有谁 LOLs14全球总决赛T1战队介绍
- 英雄联盟faker身价有10亿吗 英雄联盟faker身价介绍一览
- faker大魔王称号怎么来的 faker大魔王称号来源介绍
- PS5 Pro上的蒂法更美了!博主盛赞新机1000%值得购买
- 腾讯互娱再离职一员大将!或因供应商贪腐
- Ayaneo3游戏掌机预热:旗舰定位、造型圆润自带底键
- 动力火车.1999-背叛情歌【上华】【WAV+CUE】
- 刘力扬.2019-Neon.Lit虹【摩登天空】【FLAC分轨】
- 群星.2002-恋爱物语情歌对唱精选2CD(引进版)【滚石】【WAV+CUE】
- 群星《闽南情24K德国HD金碟》2CD[WAV+CUE]
- 周传雄《恋人创世纪》环球唱片[WAV+CUE]
- 关淑怡-《真假情话K2HD》(日本压制)【WAV+CUE】
- 王菲 -《Faye Wong》雨果LPCD45 [WAV+分轨][1G]