零基础学习HTML(6)——初识JavaScript


注:学习笔记基于小甲鱼学习视频,官方论坛: https://fishc.com.cn/forum.php

官方资料

鱼C课程案例库:https://ilovefishc.com/html5/
html5速查手册:https://man.ilovefishc.com/html5/
css速查手册:https://man.ilovefishc.com/css3/

学习正文

script标签:https://man.ilovefishc.com/pageHTML5/script.html
noscript标签:https://man.ilovefishc.com/pageHTML5/noscript.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>定义文本内嵌脚本</title>
	<meta name="viewport" content="width=device-width, intial-scale=1.0">
	<meta name="keywords" content="小甲鱼,Web开发,HTML5,CSS3,Web编程教学">
	<meta name="description" content="《零基础入门学习Web开发》案例演示">
	<meta name="author" content="小甲鱼">
	<script type="text/javascript">
		document.write("I love FishC.com!");
	</script>
</head>
<body>
	<p>上面的内容哪来的?</p>
</body>
</html>

在这里插入图片描述
如果把script标签放在p标签下面,则这两句话将上下调换。

也可以通过 src 属性引用外部脚本文件:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>定义文本内嵌脚本</title>
	<meta name="viewport" content="width=device-width, intial-scale=1.0">
	<meta name="keywords" content="小甲鱼,Web开发,HTML5,CSS3,Web编程教学">
	<meta name="description" content="《零基础入门学习Web开发》案例演示">
	<meta name="author" content="小甲鱼">
	<script type="text/javascript" src="html/hi.js"></script>
</head>
<body>
	<p>上面的内容哪来的?</p>
</body>
</html>

js文件:

document.write("I love FishC.com!");

运行效果是一样的。

注:不能在同一个script元素里既定义内嵌脚本又引入外部脚本。

同时我们可以延迟执行脚本(打个补丁):

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>定义文本内嵌脚本</title>
	<meta name="viewport" content="width=device-width, intial-scale=1.0">
	<meta name="keywords" content="小甲鱼,Web开发,HTML5,CSS3,Web编程教学">
	<meta name="description" content="《零基础入门学习Web开发》案例演示">
	<meta name="author" content="小甲鱼">
</head>
<body>
	<p>我是谁?</p>
	<p>我从哪里来?</p>
	<p>我要到哪里去?</p>
	<script type="text/javascript" src="html/patch.js"></script>
</body>
</html>

js文件:

var x = document.getElementsByTagName("p");

for (var i=0; i < x.length; i++)
{
	x[i].innerText = "小甲鱼到此一游~";
}

在这里插入图片描述
HTML的解析是自顶向下的,所以我们要先显示p标签,然后再进行替换。

当然,我们也可以使用defer属性来延迟执行脚本,这样就不用将script元素贴的到处都是:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>定义文本内嵌脚本</title>
	<meta name="viewport" content="width=device-width, intial-scale=1.0">
	<meta name="keywords" content="小甲鱼,Web开发,HTML5,CSS3,Web编程教学">
	<meta name="description" content="《零基础入门学习Web开发》案例演示">
	<meta name="author" content="小甲鱼">
	<script type="text/javascript" src="html/patch.js" defer></script>
</head>
<body>
	<p>我是谁?</p>
	<p>我从哪里来?</p>
	<p>我要到哪里去?</p>
</body>
</html>

注:defer属性只能用于外部脚本文件。

异步执行脚本,可以使用async属性,但需要慎用,可能会导致不可控情况。
同样,async属性只能用于外部脚本文件。

noscript标签,用于不支持JavaScript的浏览器显示内容:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>定义文本内嵌脚本</title>
	<meta name="viewport" content="width=device-width, intial-scale=1.0">
	<meta name="keywords" content="小甲鱼,Web开发,HTML5,CSS3,Web编程教学">
	<meta name="description" content="《零基础入门学习Web开发》案例演示">
	<meta name="author" content="小甲鱼">
	<script type="text/javascript" src="html/patch.js" defer></script>
	<noscript>
		<p>都什么年代了,没有JavaScript哪行?</p>
	</noscript>
</head>
<body>
	<p>我是谁?</p>
	<p>我从哪里来?</p>
	<p>我要到哪里去?</p>
</body>
</html>

在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值