一看到名字,大家都认为Javascript是Java的脚本版。
实际上,除了在名字上有共同的词Java以外,他们俩是完全不同的两种语言。
所以不要认为Java和Javascript有什么共同之处。
 
为了便于阅读,以下内容我们将Javascript称为js。
 
需要跟大家说明的是,js这个东西,学会使用它,只需要片刻功夫。
而要真正掌握它需要数年的时间。
是不是很沮丧?>_>
 
对于我们这些非专业编码人员来说,确实是个不好的消息。
好在网上有很多开发团队开发出了自己的js库,也称之为js框架。
有了这些库,我们编写代码会简单很多,而且也会满足我们一般的使用。
这一类框架,最有名的就是jQuery。简称jq。
首先我们学习基础知识,然后再使用框架以提高我们的效率。
 
我们的《10分钟课堂》关于js部分,我们会考虑大家的接受能力,首先,主要讲js的基础知识以及一般用法。
讲到一定程度后,我们会转向框架。
最终目的是把大家领上道,又能通过框架来满足我们编写网页的基本要求。
想要攀上js之巅,就需要大家自身的努力了。
 

那么js到底能给我们带来什么呢?

它具备了与浏览器窗口及其内容等几乎所有方面交互的能力。
那说得再简单一些:网页上的交互功能,特效,动画等都可以通过js来实现。
 

script元素

向HTML页面中插入js的主要方法就是使用script元素。
(关于script元素的使用,大家可以在网上查看更多的教程,但是暂时没有必要。)
我们这里会按HTML5的标准来使用它。
 

通常,我们使用script元素的方式有两种:
1,直接在页面中嵌入js代码。
2,调用外部js文件。

第一种方法的如下,例(一):

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Javascript</title>
<script>
function popup(t){
	console.log(t);
	}
</script>
</head>

<body>
<a href="#" onMouseDown="popup('Boooom');">点击这里</a>
</body>

这是一个完整的HTML页面代码。
功能是点击链接的时候会弹出窗口,窗口的内容为Boooom。
大家可以复制上述代码自己试一遍,看看会发生什么。
 
调用外部js文件的方法,例(二):

<script src="sample.js"></script>

然后把需要的js代码放到sample.js文件里就可以了。
 
这时会有同学问了。这些插入的代码和调用的代码放在HTML文档的什么位置会更适合。
我想说,这个就要考虑代码的执行顺序了。
正常,代码都是顺序执行的。就是执行完第一行,再执行第二行。
当然,如果有判断条件,可以跳行执行。
 
我们就按例(一)做一下解释:
首先我们在head位置插入了js代码。
里面定义了一个函数popup()。
body里链接的地方有个事件来执行该函数,就是onMouseDown(鼠标按下去的时候),执行popup函数。
所以我们会看到点击链接的时候有窗口弹出。
总结就是:事件产生的时候,要执行的函数一定要事先创建好,否则,不会有函数执行。
 
至于位置,为了便于阅读,或者考虑一定的页面加载效率,我们会酌情放在head关闭标签的前面或者body关闭标签的前面。
实际上,放哪里都可以,只要能执行就行。
因为代码是顺序执行的(再之后的课程中我们也会讲延迟执行和异步执行)。
 

关于代码的执行,再举个更生动的例子吧:
我们用微波炉解冻肉类的步骤是:
1,准备好肉(定义函数)
2,把肉放进微波炉(定义事件)
3,开启微波炉解冻(执行事件)
4,停止后,把肉拿出来看看,如果还没解冻好,放进去再解冻。(条件判断)
5,如果解冻好,那就把肉拿出来,完毕。(如符合条件代码执行结束)

在上面的讲解中,我们讲到了函数,事件。
函数popup()的括号里还有个t。
t在这里是参数,(如果有多个参数可以用半角逗号隔开,如:popup(e,t);)。
还有个条件(以后会讲到)。
 
通常呢,js交互就是在某种事件产生的时候执行函数的过程。
 

Javascript函数

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
 

Javascript事件

事件通常与函数配合使用,通过发生的事件来执行函数。
 
下面我们就按照上面的理解,
完整的讲一下例(一),看看他们之间的关系。
 
先定义一个函数,函数的名字随便起,不能有特殊字符,在这里起为popup。

function popup(){}

定义函数都是通过function来定义的。
就是以英文function开头,后面跟着函数的名称,名称后面有括号。
括号里可以是空的,也可以有参数。
参数就是用来传递数据的。
例(一)就是定义了一个pupup函数,参数是t。
这里的参数名也是可以随便起的(当然不能有特殊字符)。
 
定义了函数了,要让这个函数有某种功能。
功能就是通过alert函数弹出一个窗口,窗口的内容为通过函数的参数传递过来的t的信息,如下:

function popup(t){
 console.log(t);
 }

注:console.log() 方法用于输出指定消息。
 
好了,函数定义好了,就需要执行它了。
我们选择的方法是,当按钮被点击的时候执行该函数。
用了js事件中的onMouseDown事件来执行该函数。

<a href="#" onMouseDown="popup('Boooom');">点击这里</a>

我们可以看到onMouseDown=”popup(‘Boooom’)”;这里,括号里是一个’Boooom’,单括号引的Boooom,意思是输出文本Boooom。
输出文本我们通常用双引号。
但是由于onMouseDown=””事件已经用了双引号。所以,事件里的双引号要变成单引号。
 
最终就是,当链接被点击的时候执行popup函数,需要被传递的数据是Boooom,该数据会通过t参数进行传递,传递到alert那里,最终产生有弹窗的效果。
你有没有理解呢?
不要着急,慢慢来。
 

相关英语

script = 脚本,命令
function = 函数,功能
alert = 警告框,警觉的,注意的,警报
onMouseDown = on mouse down = 鼠标按下