我管理着一群程序员。我确实重视我的员工的意见,但最近我们对于在 Web 项目中使用哪个框架存在分歧。
我个人喜欢MooTools,但我的一些团队似乎想要迁移到jQuery,因为它被更广泛地采用。这本身不足以让我允许迁移。
我已经使用了jQuery和MooTools。这篇特别的文章倾向于反映我对这两个框架的感受。jQuery非常适合 DOM 操作,但似乎仅限于帮助您做到这一点。
功能方面,jQuery和MooTools都允许简单的DOM 选择和操作:
// jQuery
$('#someContainer div[class~=dialog]')
.css('border', '2px solid red')
.addClass('critical');
// MooTools
$('#someContainer div[class~=dialog]')
.setStyle('border', '2px solid red')
.addClass('critical');
// jQuery
$('#someContainer div[class~=dialog]')
.load('/DialogContent.html');
// MooTools (Using shorthand notation, you can also use Request.HTML)
$('#someContainer div[class~=dialog]')
.load('/DialogContent.html');
// jQuery
$('#someContainer div[class~=dialog]')
.animate({opacity: 1}, 500);
// MooTools (Using shorthand notation, you can also use Fx.Tween).
$('#someContainer div[class~=dialog]')
.set('tween', {duration: 500})
.tween('opacity', 1);
jQuery提供以下附加功能:
- 庞大的支持者社区
- 插件库
- 与 Microsoft 的 ASP.NET 和 VisualStudio 集成
- 由 Microsoft、Google 和其他公司使用
MooTools提供以下附加功能:
- 面向对象的框架,带有 JS 的经典 OOP 仿真
- 扩展本机对象
- 本机功能支持的浏览器之间更高的一致性。
- 更容易的代码重用
- 由万维网联盟、Palm 等使用。
鉴于此,MooTools似乎完成了jQuery所做的一切,甚至更多(有些事情我在jQuery中做不到,而我在MooTools中可以),但jQuery的学习曲线更小。
所以问题是,你或你的团队为什么选择jQuery而不是另一个 JavaScript 框架?
注意:虽然我知道并承认jQuery是一个很棒的框架,但还有其他选择,我试图决定为什么jQuery应该是我们的选择,而不是我们现在使用的 ( MooTools )?