IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> JS-01-在HTML中嵌入JavaScript代码的三种方式 -> 正文阅读

[JavaScript知识库]JS-01-在HTML中嵌入JavaScript代码的三种方式

JS-01-在HTML中嵌入JavaScript代码的三种方式

1.JavaScript概述

Web的组成有HTML、CSS还有即将要学习的JavaScript(简称JS)。

CSS和JS主要是服务于HTML,前者让HTML更加美观,后者能够让HTML动起来。

如果把HTML比作一只光秃秃的鸟的话,那么CSS就是鸟的羽毛,JS就是让鸟能够飞起来的肌肉。

2.在HTML中嵌入JavaScript代码的第一种方式

JS是一门事件驱动型的编程语言,依靠事件去驱动,然后执行对应的程序。

在JS中有很多事件,其中有一个事件就叫做:鼠标单击,click。并且任何事件都会对应一个事件句柄,onclick。

注意:事件和事件句柄的区别是:事件句柄是在事件单词前面加一个on,且事件句柄是以HTML标签的属性存在的。

第一种方式:以事件句柄的方式。

2.1通过事件句柄的方式嵌入JS代码

下面编写程序,实现一个按钮,当点击时,弹出一个对话框,显示“Hello JS!”

在JS中有一个内置的对象叫做window,全部小写,可以直接拿来使用。【window代表的是浏览器对象】

window对象有一个函数叫做alert,可以实现弹窗,用法是:window.alert(“message”);

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>在HTML中嵌入JavaScript的第一种方式</title>
</head>
<body>
    <input type="button" value="点击" onclick="window.alert('Hello JS')">
    <-- JS中的字符串可以使用单引号,也可以使用双引号 -->
    <-- <input type="button" value="点击" onclick='window.alert("Hello JS")'> -->
</body>
</html>

思考:οnclick=“JS代码”,执行原理是什么?

  • 当页面打开时,js代码不会执行执行,只是把这段JS代码注册到按钮的click事件上去了,当这个按钮发生click事件后,注册在onclick后面的JS代码会被浏览器自动调用。

注意:JS中的一条语句结束之后可以使用分号“;”,也可以不使用。

<input type="button" value="点击" onclick="window.alert('Hello JS');">
<input type="button" value="点击" onclick="window.alert('Hello JS')">

2.2可以在一个事件句柄中写多条JS语句

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>在HTML中嵌入JavaScript的第一种方式</title>
</head>
<body>
    <input type="button" value="点击" onclick="window.alert('Hello JS')
                                                window.alert('Hello Web')
                                                window.alert('Hello World')">
	<!-- window可以省略不写 -->
	<input type="button" value="点击" onclick="alert('Hello JS')
	                                            alert('Hello Web')
	                                            alert('Hello World')">
</body>
</html>

3.在HTML中嵌入JavaScript代码的第二种方式

3.1通过内部脚本块的方式嵌入JS代码

类似于CSS中的内部样式表,JavaScript也可以在HTML代码中编写脚本代码块。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>嵌入JS的第二种方式</title>
	</head>
	<body>
		<input type="button" value="点击打开" />
		<!-- 第二种方式:内部脚本块的方式 -->
		<!-- 暴露在脚本块中的JS程序,不需要触发事件,打开页面的同时执行JS代码,且遵循自上而下的顺序。-->
		<script type="text/javascript">
			window.alert("Hello World")
			window.alert("Hello JS")
		</script>
		<input type="button" value="打开" />
	</body>
</html>

3.2脚本块可以出现多次且位置随意

另外,javascript的脚本块在一个页面中可以出现多次,且出现位置也没有要求。

<script type="text/javascript">
	window.alert("顶部脚本块")
</script>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>嵌入JS的第二种方式</title>
		<script type="text/javascript">
			window.alert("头部脚本块")
		</script>
	</head>
	<body>
		<input type="button" value="点击打开" />
		<!-- 第二种方式:内部脚本块的方式 -->
		<!-- 不需要事件触发,打开页面的同时执行JS代码,且遵循自上而下的顺序。-->
		<script type="text/javascript">
			window.alert("Hello World")
			window.alert("Hello JS")
		</script>
		<input type="button" value="打开" />
	</body>
</html>
<script type="text/javascript">
		window.alert("脚部脚本块")
</script>

3.3alert函数会阻塞整个HTML页面的加载

alert函数会阻塞整个HTML页面的加载,直到点击确定。

3.4JavaScript的注释书写格式

JS的注释书写格式与java一样。

<script type="text/javascript">
    //单行注释
    /*
     多行注释
    */
    window.alert("Hello World")
    window.alert("Hello JS")
</script>

而java有独特的javadoc注释。

这里的注释信息会被javadoc.exe工具解析提取生成帮助文档。

/**
 *
 * @return 返回值
 */
public static int dosome(){
    return 3;
}

4.在HTML中嵌入JavaScript代码的第三种方式

类似于CSS的外部样式表,我们也可以将JavaScript的代码放到一个外部的后缀名为.js的文件中去。

这种方式也是推荐使用的。

4.1通过引入外部js文件的方式嵌入JS代码

js文件:

alert("Hello JS")
alert("Hello World")

html文件:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>嵌入JS的第三种方式</title>
	</head>
	<body>
		<!-- 在需要的地方引入js脚本文件 -->
		<script type="text/javascript" src="js/1.js"></script>
	</body>
</html>

引入外部独立的js文件时,js文件中的代码会遵循自上而下的顺序逐行执行:

4.2同一个js文件可以被引入多次。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>嵌入JS的第三种方式</title>
	</head>
	<body>
		<!-- 在需要的地方引入js文件 -->
		<script type="text/javascript" src="js/1.js"></script>
		<script type="text/javascript" src="js/1.js"></script>
	</body>
</html>

但实际开发中这种需求很少。

4.3引入js文件时,能否在script标签内再编写js代码,会执行吗?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>嵌入JS的第三种方式</title>
	</head>
	<body>
		<!-- 在需要的地方引入js文件 -->
		<script type="text/javascript" src="js/1.js">
			alert("内部代码块")
		</script>
	</body>
</html>

由结果来看,不会执行。

4.4引入js文件后,能否再编写另外的js脚本块呢?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>嵌入JS的第三种方式</title>
	</head>
	<body>
		<!-- 在需要的地方引入js文件 -->
		<script type="text/javascript" src="js/1.js"></script>
		<!-- <script type="text/javascript" src="js/1.js">
			alert("内部代码块")
		</script> -->
		<script type="text/javascript">
			alert("内部代码块2")
		</script>
	</body>
</html>

由结果来看,可以。

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-01 14:24:51  更:2021-08-01 14:25:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/3 17:05:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码