心情再差,也还是要拿起我的 JavaScript 实战重点代码

   日期:2020-10-29     浏览:88    评论:0    
核心提示:昨天与国家奖学金失之交臂,伤心的哭了一晚上,生活也还是要继续,抹完了眼泪今天继续干我的JavaScript!目录一、JavaScript的几个常用函数实战下载框制作一、JavaScript的几个常用函数typeof函数查看变量类型typeof(变量名)<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> </head>

昨天与国家奖学金失之交臂,伤心的哭了一晚上,生活也还是要继续,抹完了眼泪今天继续干我的JavaScript!

目录

  • 一、JavaScript的几个常用函数
    • 实战下载框制作
  • 二、如何获取一个或者多个元素
    • 2.1根据ID查找
    • 2.2根据class查找
    • 2.3根据标签查找
    • 2.4创建节点
    • 2.5删除一个元素
    • 2.6如何修改属性
    • 2.7更改img标签的src属性值
    • 2.8修改class
    • 2.9使用innerHTML来修改内部内容
    • 2.10更换页面样式表(网页换肤)
  • 三、特殊值及转义字符
    • 3.1两个特殊数值NaN和Infinity
    • 3.2转义字符的用法
    • 3.3未定义(undefined)和空(null)
    • 3.4Javascript中的类型转换
      • 3.4.1强制类型转换
      • 3.4.2自动类型转换
  • 四、(实战)倒计时的制作

一、JavaScript的几个常用函数

typeof函数查看变量类型
typeof(变量名)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript"> var value = '甜甜'; // string(字符串) console.log(typeof value); value = 21; // number(数字) console.log(typeof value); value = true; // boolean(布尔型) console.log(typeof value); </script>
	</body>
</html>

去运行一下就知道啦,右键检查,去控制台。

setInterval函数(定时器)

setInterval(function(){
	//每秒钟执行一次此处的代码
},100);

见下面那个实战
setTimeout (延迟执行)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		请等我5秒钟,我会夸你帅!
		<script> setTimeout("alert('你是最帅的,最帅的人要多等候5秒钟')", 5000 ) </script>
	</body>
</html>

实战下载框制作

loading.html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css"> *{  margin: 0; padding: 0; } #box1{  width: 700px; height: 30ox; border: solid 1px khaki; margin-top: 50px; margin-left: 10px; } #box2{  width: 0px; height: 30px; background-color: red; } #box3{  margin-left: 10px; color: black; } </style>
	</head>
	<body>
		<div id="box1">
			<div id="box2">
				
			</div>
		</div>
		<span id="box3">
			
		</span>
		<script type="text/javascript"> var i=0; var timger1=setInterval(function(){  i=i+10; document.getElementById("box2").style.width=i+"px"; document.getElementById("box3").innerHTML=parseInt((i/700)*100)+"%"; if(i>=700) {  clearInterval(timger1); } },100); </script>
	</body>
</html>

拿去运行一下就知道了哈哈哈哈

二、如何获取一个或者多个元素

要操作一个元素,首先要找到它。
我们一般有多种方法找到一个元素。
获取到一个元素之后,我们能做什么?

  1. 能设置这个元素的样式。
  2. 能获取和设置到这个元素里面的内容(带html结构的)。
  3. 能获取和设置这个元素里面的文本。
  4. 能获取和设置这个元素的属性。
  5. 能删除这个元素。

总结:有了js之后,就可以动态的修改DOM的结构。

这边分享一个小故事,我专业老师当时读的是数学专业,上了大学没有参加什么活动,一心搞学习,结果在大二的时候已经在实习了,完全自学代码,这是我很喜欢听他的课的原因,有次讲了他一个很搞笑的事情,面试的时候,被问到什么是dom,哈哈哈他不知道,就叫回去等结果(完蛋)哈哈哈哈,其实dom就是文档对象模型 (DOM) 是HTML和XML文档的编程接口

2.1根据ID查找

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<style type="text/css"> </style>
	<body>
		<a id=lovely href="https://blog.csdn.net/hanhanwanghaha">欢迎关注这个敲可爱的人鸭</a>
		
		<a id=homepage https://me.csdn.net/hanhanwanghaha">此时我的javascript中没有执行ID为homepage的那段超链接</a>
		
		<script type="text/javascript"> var lovely = document.getElementById("lovely") alert(lovely.innerText) </script>
	</body>
</html>

2.2根据class查找

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<style type="text/css"> .box1{  height: 50px; width: 50px; background-color: gold; } .box2{  height: 50px; width: 50px; background-color: gold; } .box3{  height: 50px; width: 50px; background-color: gold; } </style>
	
	<body>
		<div class="box1">
			
		</div>
		
		<div class="box1">
			
		</div>
		
		<div class="box2">
			
		</div>
		<div class="box3">
			
		</div>
		
		<script type="text/javascript"> var list_ok = document.getElementsByClassName("box1"); for (var i=0;i<list_ok.length;i++){  list_ok[i].style.border = "solid 3px red";  } </script>
	</body>
</html>

2.3根据标签查找

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<style type="text/css"> </style>
	<body>
		<a id=lovely href="https://blog.csdn.net/hanhanwanghaha">欢迎关注这个敲可爱的人鸭</a>
		
		<div id="homepage">
			<a href="https://www.qqtn.com/article/article_124916_1.html">齐天大圣</a>
		</div>
		
		<script type="text/javascript"> var lovely = document.getElementsByTagName("div") alert(homepage.innerText) </script>
	</body>
</html>

2.4创建节点

通过js动态地创建

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<div id="div1">
			<p id="p1">这是第一个段落</p>
			<p id="p2">这是第二个段落</p>
		</div>
	</head>
	<style type="text/css"> </style>
	<body>
		<script type="text/javascript">  var para=document.createElement("p");  var node=document.createTextNode("这是新的一个段落");  para.appendChild(node);   var element=document.getElementById("div1");  element.appendChild(para); </script>
	</body>
</html>

2.5删除一个元素

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		
	</head>
	<body>
		<div id="div1">
			<p id="p1">这是第一个段落</p>
			<p id="p2">这是第二个段落</p>
		</div>
		
		<script type="text/javascript">  var parent=document.getElementById("div1");  var child=document.getElementById("p1");  parent.removeChild(child); </script>
	</body>
</html>

如果只知道子元素的id,父元素没有id也没有class,可以使用下面的办法:

var child=document.getElementById("p1");
child.parentNode.removeChild(child);

2.6如何修改属性

HTML标签中,有什么属性,就用document.getElementById()得到这个元素之后,点什么属性再进行修改!

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<style type="text/css"> </style>
	<body>
		<a id=lovely href="https://blog.csdn.net/hanhanwanghaha">从我的主页转换到B站</a>
		
		<script type="text/javascript"> document.getElementById("lovely").href="https://www.bilibili.com/video/BV1fT4y137yU?from=search&seid=10946771334789229192"; </script>
	</body>
</html>

2.7更改img标签的src属性值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>我的现女友和前女友</title>
	</head>
	<script type="text/javascript"> function change(){  document.getElementById("imgs").src = "img/Jolin.jpg"; document.getElementById("imgs").title = "前女友" } </script>
	<body>
		<input type="button" value="change" onclick="change()"/>
		<img id="imgs" src="img/pink.jpg" title="现女友" />
	</body>
</html>

图片可以自己找,我奉上两张个人特别喜欢的人

点击左下角的change


就会变成下图的照片


有什么,就点什么!常见的是:
img 标签的src属性;a标签的href属性、title属性。

2.8修改class

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>欢迎关注</title>
	</head>
	
	<body>
		<p id="lovely" class=taga >欢迎关注这个敲可爱的人呀</p>
		
		<script type="text/javascript"> document.getElementById("lovely").className = "taglovely" </script>
	</body>
</html>

见下图

在保留class="taga"的基础上再添加一个类名为 hanhan

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>欢迎关注</title>
	</head>
	
	<body>
		<p id="lovely" class=taga >欢迎关注这个敲可爱的人呀</p>
		
		<script type="text/javascript"> document.getElementById("lovely").className += " hanhan" </script>
	</body>
</html>

2.9使用innerHTML来修改内部内容

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>欢迎关注</title>
	</head>
	
	<body>
		<div id="lovely">
			我是周杰伦的小可爱
		</div>
		
		<script type="text/javascript"> document.getElementById("lovely").innerHTML = "<div>总有一天要让周杰伦认识我</div>"; </script>
	</body>
</html>

2.10更换页面样式表(网页换肤)

这边看到一个写的很不错的代码

https://blog.csdn.net/suwu150/article/details/78313803

三、特殊值及转义字符

3.1两个特殊数值NaN和Infinity

NaN(计算错误,类型转换失败)
Infinity(除数为零)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>欢迎关注</title>
	</head>
	
	<body>
		<script type="text/javascript"> console.log(1/0); </script>
	</body>
</html>

运行到谷歌,右键检查就可以就会报下面的东东

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>欢迎关注</title>
	</head>
	
	<body>
		<script type="text/javascript"> console.log("a"/0); </script>
	</body>
</html>

运行到谷歌,右键检查就可以就会报下面的东东

3.2转义字符的用法

如果字符串的数据中出现特殊的符号需求使用转义字符(\)额外处理。

3.3未定义(undefined)和空(null)

变量定义后从未赋值时,该变量的默认值为undefined。
数据类型undefined只有一个值undefined。

注意:undefined代表,一个变量已经定义但是未赋值,默认值是undefined.

<!DOCTYPE html>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset="utf-8">
		<title>欢迎关注</title>
	</head>
	
	<body>
		<script type="text/javascript"> var a; console.log(a);//undefined </script>
	</body>
</html>

运行之后右键检查

什么是空(null)?

数据类型null只有一个值null。
可以通过给一个变量赋 null 值来清除变量的内容。

上面蓝色的这句话,我没有特别懂,我问了一下老师,老师是这样回答的

有一个变量,里面装的有值,它就会占用我们的空间,如果说我们把这个值赋值为null,就可以把这个变量释放掉!

经典面试题: null与undefined比较

相同点:null,undefined均代表无值;

不同点:undefined代表一个变量如果没有赋值;
null代表一个对象没找到,那么就为null。

3.4Javascript中的类型转换

什么是类型转换
将一种类型转为另外一种数据类型.例如: 将string类型的’1’转换成数字类型的1.

为什么要进行类型转换
因为数据之间的运算只有同类型之间的运算, 如果不同类型之间存在运算的话,需要将其转换为同一种类型后再进行运算.

类型转换分为两种:
强制类型转换, 自动类型转换

3.4.1强制类型转换

使用parseInt()和parseFloat()将一种类型的数据到数字类型.(常用)

parseInt(变量名):将变量转换为整数

parseFloat(变量名):将字符串转为小数

Number (变量名):将变量转换为数字,只能数字构的成字符串才可以转换

Boolean(变量名):转换为布尔值,true/false;

String(变量名):转换为字符串

3.4.2自动类型转换

在运行过程中根据编程语言的运算的语意环境,Javascript会自动进行类型转换.

四、(实战)倒计时的制作

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css"> *{  margin: 0; padding: 0; } body {  background-color: pink; } #box1{  color: red; font-size: 60px; } </style>
	</head>
	<body>
		<div id="box1">
			
		</div>
		
		<script type="text/javascript"> aa(); var timer1=setInterval(function(){  aa(); },1000) function aa() {  var endtime=new Date("2021/2/12 00:00:00"); var now=new Date(); var t=endtime.getTime()-now.getTime(); if(t>0) {  var day=Math.floor(t/1000/60/60/24); var hour=Math.floor(t/1000/60/60%24); var mouth=Math.floor(t/1000/60%60); var second=Math.floor(t/1000%60); var str="距离春节还有"+day+"天 "+hour+"小时 "+mouth+"分 "+second+"秒"; document.getElementById("box1").innerHTML=str; } else {  clearInterval(timer1); document.getElementById("box1").innerHTML="春节已到!"; } } </script>
	</body>
</html>

终于写完了。。。
https://blog.csdn.net/hanhanwanghaha
一个敲可爱的人欢迎您的一键三连

有问题,私信也可,评论也可,看见必回。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服