jquery和prototype框架的比较
来源:互联网 发布:切线刚度矩阵 编辑:程序博客网 时间:2024/05/17 03:30
以前做界面是用jquery的,现在因为要用许多ajax效果,改用了rails自带的prototype
因为jquery用多了,换个框架也大同小异,不过细节上有很多不同。。。
1.dom加载方面:
jquery有dom ready方法,推迟js函数的绑定知道dom树完成(如果没有这个功能,一些element的事件函数之类的绑定可能会出错):
$(document).ready(function(){});
但是prototype是没有的。。。得自己找非官方的扩展,不方便,这个基本的功能,这么重要的功能,不知道为啥迟迟不加到核心库
2.path查找,dom定位方面
jquery的dom查找和css定位一致,用过就感觉非常方便,这是他的一大亮点和优点
$('.func #select_all').click(function()
$(this).parent('div').parent('div').find('li .checkbox input:checkbox')
prototype只有查找单个dom对象方便--$(id)
比较麻烦的是把单个和数组分开了,如果找一个路径下的许多对象
得$$('div .right_contact'),这种风格仍然是定位某一类型的对象
而不是用路径查找,这方面不如jquery方便和概念一致
3.函数,事件绑定
举个例子,把class为right_contact的div绑定click高亮事件,prototype写法是:
$$('div .right_contact').each(function(item){
item.observe('click', function(event){
new Effect.Highlight(item,{ duration: 2.0,startcolor: '#ffff99',endcolor: '#fffffff',restorecolor: '#fffffff' });
});
});
如果是jquery,简洁很多:
$('.right_contact').click(function(){
$(this).toggleClass('hilight');
})
我用过很多框架,印象最深刻的是一个叫hge game engine的框架,封装了大量的底层细节和实现方法,然后他说:you could create everything from a simple puzzle to advanced multilayered platformer or strategy without even thinking of any non game logic code
优秀的框架应该是让人集中注意到业务逻辑上而不是技术特性,设计模式上
这方面,jquery比prototype优秀,最典型的例子就是
如果要鼠标点击触发函数,prototype搞个大而全的observe方法,然后去注册click事件
而jquery就有item.click函数。。。observe是能包容万象,不过jquery这种为最常用的事件
特地创建专有函数的做法,更能让人集中注意力到业务逻辑上。。。
- jquery和prototype框架的比较
- Ajax之框架prototype,jQuery,Mootools,ext,dojo的比较
- jQuery、prototype、mootools、YUI Extjs 框架比较
- jQuery、prototype、mootools、YUI框架比较
- AJAX框架/库比较和选择:ECHO2, GWT, DOJO, PROTOTYPE, JQUERY
- AJAX框架/库比较和选择:ECHO2, GWT, DOJO, PROTOTYPE, JQUERY
- AJAX框架/库比较和选择:ECHO2, GWT, DOJO, PROTOTYPE, JQUERY
- AJAX框架/库比较和选择:ECHO2, GWT, DOJO, PROTOTYPE, JQUERY
- jquery和prototype比较,以及冲突解决
- jquery和prototype比较,以及冲突解决
- 03-JQuery和prototype框架冲突解决
- 主流JavaScript框架(Dojo、Google Closure、jQuery、Prototype、Mootools和YUI)的分析和对比
- JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述
- 简述JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景
- 简述JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景
- 转载:JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述
- 简述JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景
- JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景
- (转载)大数据量,海量数据 处理方法总结
- 什么是ContentUris
- ContentProvide内容提供器的基础知识
- 什么是ContentValues类
- Shell sort and its implementation
- jquery和prototype框架的比较
- Selection sort and its implementation
- JSP内置对象(9个常用的内置对象)
- WriteLog
- CString,int,string,char*之间的转换
- 程序员能力矩阵
- 利用luabind将Lua嵌入到C++项目中
- 素数
- 关于我写的strcpy的延伸出的问题——程序运行时内存的分配