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 相关文章推荐
js类后台管理菜单类-MenuSwitch
Sep 12 Javascript
jQuery AJAX实现调用页面后台方法和web服务定义的方法分享
Mar 01 Javascript
javascript贪吃蛇完整版(源码)
Dec 09 Javascript
javascript 拷贝节点cloneNode()使用介绍
Apr 03 Javascript
javascript简单实现滑动菜单效果的方法
Jul 27 Javascript
jquery实现的判断倒计时是否结束代码
Feb 05 Javascript
js实现分割上传大文件
Mar 09 Javascript
JS给Array添加是否包含字符串的简单方法
Oct 29 Javascript
基于JavaScript实现移动端无限加载分页
Mar 27 Javascript
Vuex和前端缓存的整合策略详解
May 09 Javascript
easyui-datagrid开发实践(总结)
Aug 02 Javascript
基于vue.js组件实现分页效果
Dec 29 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中对数据库操作的封装
2006/10/09 PHP
PHP中大括号'{}'用法实例总结
2017/02/08 PHP
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
2019/04/10 PHP
基于jQuery架构javascript基础体系
2011/01/01 Javascript
js鼠标点击事件在各个浏览器中的写法及Event对象属性介绍
2013/01/24 Javascript
在jQuery中 关于json空对象筛选替换
2013/04/15 Javascript
解析Jquery中如何把一段html代码动态写入到DIV中(实例说明)
2013/07/09 Javascript
js Map List 遍历使用示例
2013/07/10 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
window.open不被拦截的简单实现代码(推荐)
2016/08/04 Javascript
浅谈js中字符和数组一些基本算法题
2016/08/15 Javascript
Bootstrap模态框禁用空白处点击关闭
2016/10/20 Javascript
预防网页挂马的方法总结
2016/11/03 Javascript
基于HTML5+JS实现本地图片裁剪并上传功能
2017/03/24 Javascript
详解Vue.use自定义自己的全局组件
2017/06/14 Javascript
vue.js 图片上传并预览及图片更换功能的实现代码
2018/08/27 Javascript
在vue-cli的组件模板里使用font-awesome的两种方法
2018/09/28 Javascript
JavaScript 点击触发复制功能实例详解
2018/11/02 Javascript
vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)
2018/11/05 Javascript
JS Math对象与Math方法实例小结
2019/07/05 Javascript
详解vuex数据传输的两种方式及this.$store undefined的解决办法
2019/08/26 Javascript
python操作mysql数据库
2017/03/05 Python
python获取多线程及子线程的返回值
2017/11/15 Python
python语音识别实践之百度语音API
2018/08/30 Python
python矩阵的转置和逆转实例
2018/12/12 Python
Python实现繁?转为简体的方法示例
2018/12/18 Python
python简单验证码识别的实现方法
2019/05/10 Python
python实现日志按天分割
2019/07/22 Python
Python 调用有道翻译接口实现翻译
2020/03/02 Python
建筑工程造价专业自荐信
2014/07/08 职场文书
合作经营协议书范本
2014/09/16 职场文书
离婚协议书格式
2015/01/26 职场文书
大学生入党自传2015
2015/06/26 职场文书
课改心得体会范文
2016/01/25 职场文书
vue postcss-px2rem 自适应布局
2022/05/15 Vue.js
SQL Server 中的事务介绍
2022/05/20 SQL Server