Javascript教案.docx

上传人:b****2 文档编号:17189528 上传时间:2023-04-24 格式:DOCX 页数:17 大小:75.30KB
下载 相关 举报
Javascript教案.docx_第1页
第1页 / 共17页
Javascript教案.docx_第2页
第2页 / 共17页
Javascript教案.docx_第3页
第3页 / 共17页
Javascript教案.docx_第4页
第4页 / 共17页
Javascript教案.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

Javascript教案.docx

《Javascript教案.docx》由会员分享,可在线阅读,更多相关《Javascript教案.docx(17页珍藏版)》请在冰豆网上搜索。

Javascript教案.docx

Javascript教案

教案

Javascript部分

共10天40学时2周

第一天Javascript简介

第一节简介

Javascript简介:

Javascript的历史

1992年,一家名为Nombas的公司开发一种叫C减减(C-minus-minus,简称Cmm,有点与C++对应的意味)的嵌入式脚本语言。

Cmm背后的理念很简单:

一个足够强大可以替代宏操作(macro)的脚本语言,同时保持C/C++足够的相似性(C语言太经典了,特别是其语法有着简洁美),以便开发人员能很快学会。

这个脚本语言被捆绑在一个叫做CEnvi的共享软件产品中,它首次向开发人员展示了这种语言的威力。

Nombas最终把Cmm的名字改成了ScriptEase,原因是后面的部分(mm)听起来过于“消极”,同时字母“C”令人害怕。

现在ScriptEase已经成为了Nombas产品背后主要驱动力(怎么我觉得这家公司已经不存在了呢)。

当NetscapeNavigator(盛极一时的网景的浏览器,结果被微软IE的免费策略搅黄了局)暂露头角时,Nombas开发了一个可以嵌入网页中的CEnvi的版本。

这些早期的实验称为EspressoPage,它们代表了第一个在万维网上使用的客户端脚本语言。

而Nombas丝毫没有料到它的理念将会成为internet的一块重要基石。

当internet普及越来越广时,对于开发客户端脚本的需求也逐渐增大。

此时,大部分internet用户仅仅通过s的Modem来连接到网络,即使这时网页已经不断地变得更大和更复杂。

加剧用户痛苦的是,仅仅为了简单的表单有效性验证,就要与服务器进行多次的往返交互。

设想一下,用户填写完一个表单,点击提交按钮,等待30秒后,看到的却是一条告诉你忘记填写一个必要的字段的信息。

那时正处于技术革新最前沿的Netscape,开始认真考虑一种开发客户端语言来处理简单的问题。

当时为Netscape工作的BrendanErich,开始着手为即将在1995年发行的NetscapeNavigator开发一个称之为LiveScript的脚本语言,当时的目的是同时在浏览器和服务器使用它。

Netscape与Sun公司联手及时完成了LiveScript的实现。

就在NetscapeNavigator即将正式发布前,Netscape将其更名为Javascript(想当年,也就是95年,正式Java普遍开始流行的一年,Java开始火起来,似乎打上一个Java的标签,也会火起来一样),目的是为了利用Java这个internet时髦词汇。

Netscape的这一决定也实现了当初的意图,Javascript从此变成了因特网的必备组件。

因为Javascript如此成功,Netscape在Navigator中发布了Javascript版本。

恰巧那个时候,微软决定进军浏览器市场,发布了IE并搭载了一个Javascript的克隆版,叫做Jscript(微软一直是一名成功的模仿者,这样命名是为了避免与Netscape潜在的许可纠纷)。

微软步入浏览器领域的这重要一步当然推动了javascript的进行一步发展。

在微软进入后,有3种不同的Javascript版本同时存在:

NetsacpeNavigator中的Javascript、IE中的JScript以及CEnvi中的ScriptEase。

与其他编程语言不同的是,Javascript并没有一个标准来统一其语法或特性,而这3种不同的版本恰恰突出了这个问题,随着用户担心的增加,这个语言标准化显然已经势在必行。

1997年,Javascript作为一个草案提交给ECMA(欧洲计算机制造商协会)。

第39技术委员会(TC39)被委派来“标准化一个通用、跨平台、中立于厂商的脚本语言的语法和语义”。

由来自Netscape、Sun、微软、Borland和其他一些对脚本编程感兴趣的公司的程序员组成的TC39锤炼出了ECMA-262,该标准定义了叫做ECMAScript的全新脚本语言。

在接下来的几年里,ISO/IEC(国际化标准组织及国际电工委员会)也采纳ECMAScript作为标准(ISO/IEC-16262)。

从此,Web浏览器就开始努力(虽然有着不同成都的成功和失败)将ECMAScript作为Javascript实现的基础。

 

Javascript的优点

1.简单性

Javascript是一种脚本编写语言,她采用小程序段的方式实现编程,像其他脚本语言一样,Javascript同样也是一种解释性语言,他提供了一个简易的开发过程,他的基本结构形式与C、C++十分类似,但他不像这些语言一样,需要先编译,而是在程序运行过程中被逐行的解释,他与HTML标记结合在一起,从而方便用户的使用操作。

2.动态性

Javascript是动态的,他可以直接对用户或客户输入作出响应,无须经过web服务程序,他对用户的反映响应,是采用以事件驱动的方式进行的,所谓事件驱动,就是指在页面中执行了某种操作所产生的动作,称为“事件”。

比如按下鼠标、移动窗口、选择菜单等都可以视为事件,当事件发生后,可能会引起相应的事件响应。

3.跨平台性

Javascript是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持javascript的浏览器就可以正确执行。

4.节省CGI的交互时间

假如提交一个简单的表单,就需要与服务器进行多次的交互,点击提交,等待30秒后被告之没有填写住址等等类似的事情发生让人感觉非常不舒服,客户端脚本就显得越来越重要,Javascript可以在数据被提交给服务器之前,预处理客户端的数据。

Javascript的局限性

浏览器有很多种,每种对javascript的支持程度是不一样的,效果会有一定的差距。

主要应用

控制文档的内容和表现

(“

hello,web

”);

控制浏览器的行为

=“欢迎访问javascript”;

和文档的内容相互作用

和用户交互

DOCTYPEhtmlPUBLIC"-3CAjax3C*/多行注释

数据类型

三种主要数据类型,两种复合数据类型和两种特殊数据类型

主要(基本)数据类型

字符串

数值

布尔

复合(引用)数据类型

对象

数组

特殊数据类型

null

undefined

注意事项:

String字符串类型:

字符串是用单引号或双引号来说明的;

数值数据类型:

Javascript支持整数和浮点数。

整数可以为正数、0或者负数;浮点数可以包含小数点、也可以包含一个“e”(大小写均可,表示“10的幂”);

Boolean类型:

true和false,不能用1和0;

Undefined数据类型:

变量创建后未赋值;

Null数据类型:

没有任何值,什么也不表示;

判断数据类型

typeof运算符

说明:

返回一个用来表示表达式数据类型的字符串

有六种可能:

number、string、boolean、object、function、undefined

--

vara=18;

varb=”今年18”;

varc=true;

(typeof(a));

(typeof(b));

(typeof(c));

(typeof(d));

(typeof(window));23;

varMame;

Mame=123;

123”

[]()+-

字段访问、数组下标、函数调用等

++--~!

deletenewtypeofvoid

医院运算符

*/%

+-

<<>>>>>

移位

<<=>>=instanceof

==!

====!

==

&

按位与

^

按位异或

|

按位或

&&

逻辑与

||

逻辑或

:

条件

=op=

赋值,运算赋值

多重求值

自学

注意使用(),减小复杂程度

 

第二天流程控制

流程控制

所谓结构化程序设计思想,就是要使所设计的程序给人一种一目了然的感觉,条理清晰,模块化,书写层次分明,要求:

顺序结构:

一条接一条,自上而下

选择结构:

判断给定条件,根据不同情况做不同处理

循环结构:

多次重复执行同一系列命令

流程结构

顺序结构

分支结构

单一选择结构if

二路选择结构if/else

内联三元运算符:

多路选择结构switch

循环结构

在循环的开始测试表达式while

在循环的末尾测试表达式do/while

遍历对象的各个属性for/in

由计数器控制的循环for

Break和continue

if(true){

alert(“出现”);

}

else{alert(“else”);}

1、111”222”333”.+100

2、

3、

For循环演示

("打印金字塔直线");

for(vari=0;i<100;i=i+5)

("");

7、

.myfont{

font-size:

150;

color:

#c99c96;

font-family:

Webdings;)

{

函数代码;

return返回值;

}

自变量的个数可以用以下变量来取得

函数名称.

自变量的值可以用以下变量取得

函数名称.arguments[x]

使用var定义变量的作用域

函数内

使用var定义局部变量

未用var定义全局变量

函数外

使用var定义全局变量

未用var定义全局变量

要求:

函数由关键字function定义

函数必须先定义后使用

函数名是调用函数时引用的名称,大小写敏感

参数表示传递给函数使用或操作的值,可以是常量,也可以是变量

return语句用于返回表达式的值,也可以没有

}

3)this关键字

是对当前对象的引用,在javascript中由于对象的引用是多层次的,防止互相引用造成混乱;

4)new运算符

设计人员自己创建对象

VarObject=newobject(parameterstable);

Birthday=newData();

Birthday=newData(December121998);

 

对象属性的引用

使用点(.)运算符

通过对象的下标实现

通过字符串形式实现

=”云南省”

University[0]=”云南省”

University[“Name”]=”云南省”

functionshowuniversity(object)

{

for(varj=0;j<2;j++)

(object[j]);

}

对象方法的引用

对象名.方法名()

例如:

Date对象

1970-1-1etTime()-start);

1970-1-1etTime()-start);

第二节课对象,实际上就是将一组属性的集合

1232”70’ame==name){

ReturnmyClass[i].math;}

}

}

Vars=(searchByName(prompt(“name”,””));

Alert(s);

}

}

字符串string对象

Vars=“somestringhere“;

Alert;

中文在ascii里占两个字节

在unicode里占一个字节

Alert(“s”));0”plit(“’);

Functionfn(){

(s[0]);

();

=(“”);

}

setInterval(fn,1000);

 

第三节课文档结构模型基础DOM

文档对象模型

Document对象

 

第四节课浏览器模型基础BOM

1、BOM的作用

提供了一些访问窗口对象的一些方法,可以用它来移动窗口位置、改变窗口大小、打开新窗口和关闭窗口、进行导航以及获取客户的一些信息如:

浏览器品牌版本、屏幕分辨率等,但BOM最强大的功能是它提供了一个访问HTML页面的入口----document对象,使得我们可以通过这个入口来使用DOM的强大功能。

Window对象是BOM的顶层对象,所有对象都通过它延伸出来,也可以称为window的子对象,所以window可以省略。

(“bom”);

、Window子对象(浏览器对象模型)

1)Window

document:

anchors、forms、images、links、location

Frames

History

Location

Navigator

Screen

2)Object

3)Array

Window对象关系属性

Parent:

如果当前窗口为frame,指向包含该frame的窗口的frame

Self:

指向当前的window对象;

Top:

如果当前窗口为frame,指向包含该frame的top-level的window

Window:

指向当前的window对象

Opener:

当窗口是用javascript打开时,指向打开它的那个窗口;

Window定位属性

IE提供了和对象来判断窗口的位置,但未提供任何判断窗口大小的方法,和属性可以获取视口的大小;

alert();

alert();

Mozilla提供和属性判断窗口的位置,它还提供了和来判断视口的大小,用和属性判断浏览器窗口自身的大小。

alert();

alert();

 

Window对象的方法

窗体控制

moveBy(x,y):

从当前位置移动窗口x,y个像素;相对

moveTo(x,y):

移动窗体左上角到屏幕左上角(x,y)点;

resizeBy(w,h):

相对窗体当前大小,调整宽度高度

resizeTo(w,h):

调整窗体宽度高度为w,h像素;

(100,100);

(0,0);

(100,100);

滚动轴控制

scrollTo(x,y):

对窗体中滚动条位置的定位;

scrollBy(x,y):

对窗体滚动条一定相对的位置;

在firebug控制台右侧里试试:

(0,0)运行

可以做双击滚屏

焦点控制

focus():

使窗体或控件获取焦点;

blur():

使窗体或控件失去焦点;

();IE会自动隐藏,firefox没作用

工具---选项----内容---高级去设置

说明这些方法不固定,可以不用

新建窗体

open():

打开(弹出)一个新的窗体;

close():

关闭窗体;

opener属性:

新建窗体中对父窗体的引用;

(url,name,features,replace);

url:

要载入窗体的url,如:

about:

blank;

Name:

窗体名称,可以自定,也可以选默认;

Features:

高度、宽度、等特性;

Replace:

布尔值,通常不用,是否替换当前载入信息;

=function(){

}200”status

setTimeout():

暂停指定的毫秒数后执行指定的代码

setTimeout(“alert(123)”,1000):

//字符串方式

setTimeout(fn,1000):

//函数方式

functionfn(){

alert();

}

clearTimeout():

第六天正则表达式

第三天事件

=function(){

语句;

}

或者

Window。

Onload=initall;

Functioninitall(){

语句;

}

每个事件只能对应一个

第八天表单

第九天表单

第十天项目

 

第五周项目

要求:

Php部分

共35天140学时7周

第一天

Mysql部分

共25天100学时5周

第一天

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1