Prototype框架详解


Posted in Javascript onNovember 25, 2015

这里所说的“Prototype”不是JavaScript编程中的原型(“prototype”),而是由“Sam Stephenson”写的一个JavaScript类库。这个构思奇妙,而且兼容标准的类库,能帮助程序员轻松建立有高度互动的“web2.0”特性的富客户端页面。

•很多人初次接触Prototype,都是从其“$”系列函数开始的,这些类似于桌面应用程序的快捷方式,是Prototype框架中使用频率最高的一组函数。此外,Prototype对Ajax的支持也是让开发人员很感兴趣的地方。当然Prototype的功能并不仅限于此,其对JavaScript内置对象进行了大量的扩展,同时也定义了很多新的对象。

prototype框架的简介:

•Prototype是目前应用最为广泛的Ajax开发框架,其的特点是功能实用而且尺寸较小,非常适合在中小型的Web应用中使用。开发Ajax应用需要编写大量的客户端JavaScript脚本,而Prototype框架可以大大地简化JavaScript代码的编写工作。更难得的是,Prototype具备兼容各个浏览器的优秀特性,使用该框架可以不必考虑浏览器兼容性的问题。

•Prototype对JavaScript的内置对象(如“String”对象、“Array”对象等)进行了很多有用的扩展,同时该框架中也新增了不少自定义的对象,包括对Ajax开发的支持等都是在自定义对象中实现的。Prototype可以帮助开发人员实现以下的目标:

•(1)对字符串进行各种处理
•(2)使用枚举的方式访问集合对象
•(3)以更简单的方式进行常见的DOM操作
•(4)使用CSS选择符定位页面元素
•(5)发起Ajax方式的HTTP请求并对响应进行处理
•(6)监听DOM事件并对事件进行处理 

•“Prototype”框架功能详解—使用实用函数

“Prototype”框架的实现仅仅包含一个JavaScript即可,1.6版本的“Prototype.js”的文件大小为127K字节,约4220行。在页面中应用的语法类似于:

•<script type=”text/javascript” src=”inc"js"Prototype.js” ></script>

•然后就可以在后继的脚本中享受该框架带来的便利了。

•该框架中有很多预定义的对象和实用函数,可以将程序员从重复的打字中解放出来。

•(1)使用“$()”函数。
•(2)使用“$F()”函数。此函数是另一个大收欢迎的“快捷键”,能用于返回任何表单输入控件的值,比如多行文本框和下拉列表框等控件。此个方法也能用元素id或元素本身做为参数。
•(3)使用“$A()”函数。此函数能将其接收到的单个的参数转换成一个Array对象。
•(4)使用“$H()”函数。此函数把一些对象转换成一个可枚举的和联合数组类似的Hash对象。
•(5)使用“$R()”函数。此函数是“new ObjectRange(lowBound,upperBound,excludeBounds)”的缩写,用于建立一个范围对象。
•(6)使用“Try.these()”函数。“Try.these()”方法用于调用不同的方法直到其中的一个成功。此函数把一系列的方法作为参数,并且按顺序的一个一个的执行这些方法,直到其中的一个成功执行。返回成功执行的那个方法的返回值。“Try.these()”函数可以用于处理兼容性问题。

Javascript 相关文章推荐
关于IE7 IE8弹出窗口顶上
Dec 22 Javascript
js的写法基础分析
Jan 17 Javascript
jQuery源码分析-03构造jQuery对象-工具函数
Nov 14 Javascript
javascript利用控件对windows的操作实现原理与应用
Dec 23 Javascript
DWZ刷新dialog解决方法
Mar 03 Javascript
jQuery的slideToggle方法实例
May 07 Javascript
详解vue + vuex + directives实现权限按钮的思路
Oct 24 Javascript
jquery使用iscorll实现上拉、下拉加载刷新
Oct 26 jQuery
Bootstrap实现翻页效果
Nov 27 Javascript
jQuery 点击获取验证码按钮及倒计时功能
Sep 20 jQuery
nodemon实现Typescript项目热更新的示例代码
Nov 19 Javascript
js简单粗暴的发布订阅示例代码
Jan 23 Javascript
谈谈js中的prototype及prototype属性解释和常用方法
Nov 25 #Javascript
Bootstrap每天必学之下拉菜单
Nov 25 #Javascript
使用Javascript写的2048小游戏
Nov 25 #Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
Nov 25 #Javascript
Bootstrap每天必学之栅格系统(布局)
Nov 25 #Javascript
jQuery实现宽屏图片轮播实例教程
Nov 24 #Javascript
jquery利用拖拽方式在图片上添加热链接
Nov 24 #Javascript
You might like
自制汽车收音机天线:收听广播的技巧和方法
2021/03/02 无线电
不用数据库的多用户文件自由上传投票系统(2)
2006/10/09 PHP
php计算十二星座的函数代码
2012/08/21 PHP
CentOS 6.2使用yum安装LAMP以及phpMyadmin详解
2013/06/17 PHP
php类中的$this,static,final,const,self这几个关键字使用方法
2015/12/14 PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
2019/10/16 PHP
关于PHP求解三数之和问题详析
2020/11/09 PHP
游戏人文件夹程序 ver 4.03
2006/07/14 Javascript
jQuery的三种$()
2009/12/30 Javascript
stream.js 一个很小、完全独立的Javascript类库
2011/10/28 Javascript
js实现广告漂浮效果的小例子
2013/07/02 Javascript
javascript获取下拉列表框当中的文本值示例代码
2013/07/31 Javascript
Javascript 中创建自定义对象的方法汇总
2014/12/04 Javascript
基于jQuery实现二级下拉菜单效果
2016/02/01 Javascript
nodejs入门教程一:概念与用法简介
2017/04/24 NodeJs
详解基于vue-cli3快速发布一个fullpage组件
2019/03/08 Javascript
详解vue微信网页授权最终解决方案
2019/06/16 Javascript
通过javascript实现段落的收缩与展开
2019/06/26 Javascript
详解在IDEA中将Echarts引入web两种方式(使用js文件和maven的依赖导入)
2020/07/11 Javascript
JavaScript的垃圾回收机制与内存管理
2020/08/06 Javascript
JS删除对象中某一属性案例详解
2020/09/08 Javascript
vue+elementUI实现简单日历功能
2020/09/24 Javascript
[50:12]EG vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python编程中的for循环语句学习教程
2015/10/14 Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
2017/11/17 Python
pandas获取groupby分组里最大值所在的行方法
2018/04/20 Python
Python 实现「食行生鲜」签到领积分功能
2018/09/26 Python
python实现手机销售管理系统
2019/03/19 Python
Django实现将views.py中的数据传递到前端html页面,并展示
2020/03/16 Python
诗普兰迪官方网站:Splendid
2018/09/18 全球购物
计算机专业毕业生自荐信
2013/12/31 职场文书
数控技术专科生自我评价
2014/01/08 职场文书
初一家长会邀请函
2014/01/31 职场文书
元旦晚会主持词
2014/03/24 职场文书
《风娃娃》教学反思
2014/04/19 职场文书
总经理助理岗位职责范本
2014/07/20 职场文书