Fork me on GitHub

javascript入门笔记

正在学习前端的道路上,写点东西分享吧。

声明

可能对前面几节的东西我觉得有点不够巩固,回去又把JavaScript的初级版本学了一发,挺简单的,笔记更新在这个地方。

学习地址传送门

最基础的js语法和DOM的简单操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<p id="p1">跪求陈恒源女装QAQ</p>
<p id="p2">陈lao太强啦QAQ</p>
<script>
document.write("%chenlao");
docuemnt.getElementById("p1").style.color="green";
</script>
</body>
</html>

//使用style.color可以控制p1这个表段落的颜色然后对其作出修改。

JavaScript代码可以插入在script标签之间,也可以利用scr属性对其进行外联式的引入。
相应的实现代码是这样的script src=”script.js”

js代码所处于的位置

一般我们都放在两个部分,一个是head标签里面还有一个就是body标签里面。
1.放在head里面。
一般js都放在head里面,浏览器一般都是先解析完其他内容之后然后再解析这一个部分的内容。
2.body里面
如果是放在body里面那么在网页读取到该语句的时候就会执行。

总之就是在head里面比放在body里面执行的要早。

JavaScript一些比较基本的交互功能的函数

jabascript的确认框(confirm确认框)。

语法:confirm(str);
其中str表示对话框中要显示的文本,返回值和boolean的值类似。
用户点击确认返回true,点取消返回false。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
var qaq=confirm("您想看陈lao女装吗?");
if(qaq==true)
{
alert("很好!");
}
else {
alert("也很不错");
}
</script>
</head>
<body>
<input type="button" name="button" value="点击有惊喜。">
</body>
</html>

JavaScript-提问(prompt消息对话框)

语法:prompt(str1,str2);
参数说明:
str1:要显示在消息对话框中的文本,不可以修改。
str2:文本框中的内容,可以修改。
返回值:
1.点击确认按钮,文本框的内容将作为函数的返回值。
2.点击取消按钮,将返回null。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>prompt</title>
<script type="text/javascript">
function rec(){
var score; //score变量,用来存储用户输入的成绩值。
var str1="请输入您的成绩";
var str2="在这里输入您的成绩";
score = prompt(str1,str2);
if(score>=90)
{
document.write("你很棒!");
}
else if(score>=75)
{
document.write("不错吆!");
}
else if(score>=60)
{
document.write("要加油!");
}
else
{
document.write("要努力了!");
}
}
</script>
</head>
<body>
<input name="button" type="button" onClick="rec()" value="点击我,对成绩做评价!" />
</body>
</html>

打开一个新的窗口(window.open)

open()的方法可以查找一个已经存在或者新建的浏览器窗口。
window.open([url],[窗口名称],[参数字符串]);
URL:可选参数,在窗口中要显示网页的网址或路径。如果省略这个参数,或者它的值是空字符串,那么窗口就不显示任何文档。
窗口名称:可选参数,被打开窗口的名称。
1.该名称由字母、数字和下划线字符组成。
2.”_top”、”_blank”、”_self”具有特殊意义的名称。
_blank:在新窗口显示目标网页
_self:在当前窗口显示目标网页
_top:框架网页中在上部窗口中显示目标网页
3.相同 name 的窗口只能创建一个,要想创建多个窗口则 name 不能相同。
4.name 不能包含有空格。
参数字符串:可选参数,设置窗口参数,各参数用逗号隔开。

例如我们打开一个http://zoomdong.site/的网站,打开的大小为300px*200px。
然后字符串后面还有一些其他有趣的参数。
top number 窗口顶部离开屏幕顶部的像素数
left number 窗口左端离开屏幕左端的像素数、
width number 窗口的宽度
height number 窗口的高度
menubar yes、no 窗口有没有菜单
toolbar yes、no 窗口有没有工具条
scrollbars yes、no 窗口有没有滚动条
status yes、no 窗口有没有状态栏

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
function emm()
{
var qaq=confirm('您确定您要打开这个弱智的网站?');
if(qaq=true)
{
window.open('http://zoomdonmg.site/','_blank','width=300,height=200');
}
else
{
alert('打开失败');
}
}
</script>
</head>
<body>
<input type="button" name="button" onclick="emm()" value="点击我来玩玩啊">
</body>
</html>

关闭窗口(window.close)

close()关闭窗口
用法:window.close();//关闭本窗口。
或者<窗口对象>.close();//关闭指定窗口。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>close()</title>
<script type="text/javascript">
function emm()
{
var mywin=window.open("http://www.imooc.com");
var zoom=confirm("您确定要关闭这个网页?");
if(zoom==true)
{
mywin.close();
alert("陈lao已成功女装");
}
else
{
alert("陈lao没能成功女装"); v
}
}
</script>
</head>
<body>
<input type="button" name="button" value="QAQ" onclick="emm()">
</body>
</html>

就是用一种类似赋值的操作来让其进行关闭。

编程小练习

就利用上面的知识来写一个有点意思的网页打开程序。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<!DOCTYPE html>
<html>
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
<script type="text/javascript">
function openWindow()
{
var qaq=confirm('是否要打开网页啊?');
if(qaq==true)
{
window.open('http://www.imooc.com','_blank','menubar=no,toolbar=no');
}
else
{
alert("不开就不开咯");
}
}
// 新窗口打开时弹出确认框,是否打开
// 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/
//打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。
</script>
</head>
<body>
<input type="button" value="新窗口打开网站" onclick="openWindow()" />
</body>
</html>

JavaScriptd的一些基本的dom操作。

通过id标签来获得属性。

dom这里指的就是文本对象模型,可以通过dom来定义访问和处理html文档的标准方法。

HTML文档可以说由节点构成的集合,三种常见的DOM节点:

  1. 元素节点:上图中、、

    等都是元素节点,即标签。

  2. 文本节点:向用户展示的内容,如
  3. 中的JavaScript、DOM、CSS等文本。
  4. 属性节点:元素属性,如标签的链接属性href=”http://www.imooc.com"。

通过ID获取元素

1
2
3
4
<p id="con">chenlao女装</p>
<script type="text/javascript">
var qaq=docuemnt.getElementById("con");//获取的元素储存在qaq中。
</script>

innerHTML属性(可以用于改变html)

这个属性用于获取或替换HTML元素中的内容。
语法:Object.innerHTML
1.Object是获取的对象。
2.innerHTML要注意大小写。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>innerHTML</title>
</head>
<body>
<h2 id="con">javascript</H2>
<p> JavaScript是一种基于对象、事件驱动的简单脚本语言,嵌入在HTML文档中,由浏览器负责解释和执行,在网页上产生动态的显示效果并实现与用户交互功能。</p>
<script type="text/javascript">
var mychar=document.getElementById("con");
document.write("原标题:"+mychar.innerHTML+"<br>"); //输出原h2标签内容
mychar.innerHTML="Hello world!";
document.write("修改后的标题:"+mychar.innerHTML); //输出修改后h2标签内容
</script>
</body>
</html>

这个innerHTML专门用于替换原来的html中的元素值。

改变css

语法:Object.style.property=”new style”;//不要漏掉的这里的引号,否则会出现error。
这里的语法有点难记hhh。
这里的Object是获取的元素的对象,例如通过getElementById(“idname”)所获取的元素。

基本的属性表
属性 概述
backgroundColor 设置元素的背景颜色
height 设置元素的高度
width 设置元素的宽度
color 设置文本的颜色
font 在一行设置所有的字体属性
fontFamily 设置元素的字体系列
fontsize 设置元素的字体大小
其他的css属性也可以利用这个属性来进行修改,可以说是比较有趣的了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>style样式</title>
</head>
<body>
<h2 id="con">I love JavaScript</H2>
<p> JavaScript使网页显示动态效果并实现与用户交互功能。</p>
<script type="text/javascript">
var mychar= document.getElementById("con");
mychar.style.color="red";
mychar.style.backgroundColor="#CCC";
mychar.style.width="300px";
</script>
</body>
</html>

修改样式记得语法格式千万不要弄错。

显示和隐藏属性。(display属性)

语法:object.style.display=value;
语法解释与上面类似。

value可以取值
值 描述
none 这个元素不会被显示
block 这个元素显示为块级元素(即显示)

控制类名(className属性)

className属性设置或返回元素的class的属性。
语法:object.classname=classname

作用:
1.获取元素的class属性。
2.为网页内的某个属性指定一个css样式来更改该元素的外观。
通过p1.className=类的名字,来控制css的样式。
Notice:千万不要把大小写搞错。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>className属性</title>
<style>
body{ font-size:16px;}
.one{
border:1px solid #eee;
width:230px;
height:50px;
background:#ccc;
color:red;
}
.two{
border:1px solid #ccc;
width:230px;
height:50px;
background:#9CF;
color:blue;
}
</style>
</head>
<body>
<p id="p1" > JavaScript使网页显示动态效果并实现与用户交互功能。</p>
<input type="button" value="添加样式" onclick="add()"/>
<p id="p2" class="one">JavaScript使网页显示动态效果并实现与用户交互功能。</p>
<input type="button" value="更改外观" onclick="modify()"/>
<script type="text/javascript">
function add(){
var p1 = document.getElementById("p1");
p1.className="two";
}
function modify(){
var p2 = document.getElementById("p2");
p2.className="two";
}
</script>
</body>
</html>

javascript设计的小项目

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" Content="text/html; charset=utf-8" />
<title>javascript</title>
<style type="text/css">
body{font-size:12px;}
#txt{
height:400px;
width:600px;
border:#333 solid 1px;
padding:5px;}
p{
line-height:18px;
text-indent:2em;}
}
</style>
</head>
<body>
<h2 id="con">JavaScript课程</H2>
<div id="txt">
<h5>JavaScript为网页添加动态效果并实现与用户交互的功能。</h5>
<p>1. JavaScript入门篇,让不懂JS的你,快速了解JS。</p>
<p>2. JavaScript进阶篇,让你掌握JS的基础语法、函数、数组、事件、内置对象、BOM浏览器、DOM操作。</p>
<p>3. 学完以上两门基础课后,在深入学习JavaScript的变量作用域、事件、对象、运动、cookie、正则表达式、ajax等课程。</p>
</div>
<form>
<div id="qaq">
<!--当点击相应按钮,执行相应操作,为按钮添加相应事件-->
<input type="button" value="改变颜色" onclick="emm1()">
<input type="button" value="改变宽高" onclick="emm2()">
<input type="button" value="隐藏内容" onclick="emm3()">
<input type="button" value="显示内容" onclick="emm4()">
<input type="button" value="取消设置" onclick="emm5()">
</div>
</form>
<script type="text/javascript">
var zoom1=document.getElementById("con");
var zoom2=document.getElementById("txt");
//定义"改变颜色"的函数
function emm1()
{
zoom1.style.color="red";
zoom2.style.background="blue";
}
//定义"改变宽高"的函数
function emm2()
{
zoom2.style.width="600px";
zoom2.style.height="800px";
}
//定义"隐藏内容"的函数
function emm3()
{
zoom2.style.display="none";
}
//定义"显示内容"的函数
function emm4()
{
zoom2.style.display="block";
}
//定义"取消设置"的函数
function emm5()
{
var force=confirm("您确定要取消这个设置");
if(force==true)
{
zoom2.removeAttribute("style");
//表示让盒子的css回到解放前。
}
else
{
alert("抱歉您已取消本次操作");
}
}
</script>
</body>
</html>

上面这个代码是非常简单的一个JavaScript代码。QAQ。

总结

And gladly would learn,and gladly teach. –Chaucer.

-------------本文结束感谢您的阅读-------------