JSP  Ajax  Prototype框架简介
Prototype框架是一个基于客户端的Ajax框架,其实质就是将客户端常用的Ajax代码,如创建XMLHttpRequest对象这些重复性代码,使用面向对象的方式进行封装,封装成一个js文件。Prototype框架使用过程,只需要调用相应的对象,而不必关系其具体的实现细节。
从这方面说,Prototype是一个基础的JavaScript应用框架,Prototype的目的是为了更方便的开发JavaScript的应用,使用它可以更加方便简单的使用JavaScript编程,开发面向对象的JavaScript程序,Prototype框架是JavaScript代码的自然扩展,更容易被人接受。
但是,Prototype是最受欢迎的AJAX框架之一。比较著名的Ajaxi站2006年的调查结果显示,Prototype同框架规模庞大的Yahoo! User Interface,Google Web Toolkit,and Atlas.等相比较起来,其排名竟然遥遥领先,这不能不令人感到惊异。答案很简单:Prototype使用起来就像是对于JavaScript语言的自然扩展。尝试过Prototype框架后,笔者几乎坚信Prototype框架应该被纳入JavaScript语言。Prototype中包含了一个功能强大好用的Ajax框架,Prototype是一个基础性的框架,很多更高层次的框架都以它为基础,例如scriptaculous效果库。
Prototype框架以面向对象的方式封装JavaScript代码,其封装文件为prototype.js。使用prototype.js可以大大简化客户端代码的开发工作。prototype.js引入了类的概念,用其编写的类可以定义一个initialize的初始化函数,在创建类实例的时候会首先调用这个初始化函数。正如其名字,prototype.js的核心还是prototype,虽然提供了很多可复用的代码,但没有从根本上解决JavaScript的开发和维护问题。
Prototype框架包含下面几个部分:
Base:Prototype中应用的基本功能,基本上其他所有部分都依赖于它,包括用于面向对象风格的ate和d,一个Try对象,函数绑定,number扩展,PeriodicalExecuter(周期性执行某个函数的功能)等。
String:对String原型的扩展,为string添加了strip,escapeHTML等等好用的方法。
Enumerable:枚举类型(array, hash, range等)的父类对象,提供枚举类型的共同方法。
ajax实例 文件浏览Array:对Array原型的扩展,为array添加了indexOf、without等方法。
Hash:为JavaScript提供了一个好用简单的Hash实现。
Range:继承于enumerable,一个范围(例如3—67)对象。
Ajax:一个功能强大好用的Ajax框架。
Dom:对基于浏览器的开发提供了很好的跨浏览器封装,并添加很多强大的功能。
Selector:提供了使用class,CSS等选择元素的功能。
form:关于表单的一些功能。
event:简单的夸平台事件封装。
position:提供了一些关于元素位置方面的功能。
可以说Prototype框架就是一个封装细节的黑盒子,为JavaScript封装了很多通用的功能,大大简化了JavaScript应用的开发,给JavaScript开发人员增添了很大的信心,Prototype可以运行于以下平台,使用它再也不用各种跨平台等问题烦恼了。
Prototype是最开放灵活的框架,Prototype框架规模紧凑,提供了核心的AJAX抽象API,在
此基础上开发人员开业开发属于自己的Ajax框架。也可以从另外一个方面理解Prototype框架,Prototype框架是为应用JavaScript编程开发的一个通用的辅助库,在该库中提供了大量的JavaScript函数和方法。其主要目的在于扩展JavaScript语言本身,以便支持更加面向对象的编程风格并封装重复的代码。Prototype可以看成是库开发人员所使用的库。普通Ajax开发人员一般直接使用的是基于Prototype的库,而不是Prototype本身。
Prototype框架的下载地址是/download/prototype.js。同时,精通英语的读者,可以在该网站上在线学习。Prototype框架只有一个源代码文件prototype.js,只需要把该文件下载就可以了。Prototype框架的使用它十分简单,只需要将prototype.js文件放入到Ajax页面的Webapps开发目录,在每个页面中引入即可。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。