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 相关文章推荐
图片自动更新(说明)
Oct 02 Javascript
jquery分页插件AmSetPager(自写)
Apr 15 Javascript
jQuery插件分享之分页插件jqPagination
Jun 06 Javascript
javascript关于继承解析
May 10 Javascript
jQuery实现按钮点击遮罩加载及处理完后恢复的效果
Jun 07 Javascript
每日十条JavaScript经验技巧(二)
Jun 23 Javascript
javaScript封装的各种写法
Aug 14 Javascript
vue内置指令详解
Apr 03 Javascript
微信小程序wx.uploadfile 本地文件转base64的实现代码
Jun 28 Javascript
vue实现购物车选择功能
Jan 10 Javascript
extjs图形绘制之饼图实现方法分析
Mar 06 Javascript
Element el-button 按钮组件的使用详解
Feb 01 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
php 用checkbox一次性删除多条记录的方法
2010/02/23 PHP
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
2015/03/27 PHP
php抽象类用法实例分析
2015/07/07 PHP
php app支付宝回调(异步通知)详解
2018/07/25 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
jquery得到iframe src属性值的方法
2014/09/25 Javascript
JavaScript生成随机字符串的方法
2015/03/19 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
jQuery实现的图片轮播效果完整示例
2016/09/12 Javascript
Angular2 PrimeNG分页模块学习
2017/01/14 Javascript
Bootstrap列表组学习使用
2017/02/09 Javascript
使用JQ完成表格隔行换色的简单实例
2017/08/25 Javascript
jquery-file-upload 文件上传带进度条效果
2017/11/21 jQuery
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
2018/08/20 Javascript
Vue cli构建及项目打包以及出现的问题解决
2018/08/27 Javascript
vue-router的HTML5 History 模式设置
2018/09/08 Javascript
Vue.js中该如何自己维护路由跳转记录
2019/05/19 Javascript
mock.js模拟数据实现前后端分离
2019/07/24 Javascript
Javascript原生ajax请求代码实例
2020/02/20 Javascript
three.js着色器材质的内置变量示例详解
2020/08/16 Javascript
Python爬虫实现全国失信被执行人名单查询功能示例
2018/05/03 Python
对pyqt5多线程正确的开启姿势详解
2019/06/14 Python
Ubuntu+python将nii图像保存成png格式
2019/07/18 Python
Python 一行代码能实现丧心病狂的功能
2020/01/18 Python
python Django 反向访问器的外键冲突解决
2020/05/20 Python
python 基于opencv 实现一个鼠标绘图小程序
2020/12/11 Python
使用CSS3制作响应式导航菜单的方法
2015/07/12 HTML / CSS
HTML5 创建canvas元素示例代码
2014/06/04 HTML / CSS
《卖木雕的少年》教学反思
2014/04/11 职场文书
暖通工程师岗位职责
2014/06/12 职场文书
2015年九一八事变纪念活动实施方案
2015/05/06 职场文书
乡镇科协工作总结2015
2015/05/19 职场文书
教师年度考核自我评鉴
2015/08/11 职场文书
教师网络培训心得体会
2016/01/09 职场文书
MySQL 使用事件(Events)完成计划任务
2021/05/24 MySQL
「月刊Action」2022年5月号封面公开
2022/03/21 日漫