jquery和prototype框架的比较。。。

本文对比了jQuery与Prototype两个JavaScript库在DOM操作、路径查找及事件绑定等方面的差异。jQuery以其简洁性和直观性在开发者中更受欢迎。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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');
})


优秀的框架应该是让人集中注意到业务逻辑上而不是技术特性,设计模式上
这方面,jquery比prototype优秀,最典型的例子就是
如果要鼠标点击触发函数,prototype搞个大而全的observe方法,然后去注册click事件
而jquery就有item.click函数。。。observe是能包容万象,不过jquery这种为最常用的事件
特地创建专有函数的做法,更能让人集中注意力到业务逻辑上。。。

转载于:https://www.cnblogs.com/skl99/archive/2009/01/09/1372421.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值