Posts Tagged ‘mootools’

十月 29th, 2009

获取元素的绝对位置

1 Comment, 前端开发, by army8735.

要说getPosition()的起源,可能没人说得清楚。但是网上广为流传的这段代码,却是许多人使用的:
function getPosition (el) {
var left = 0, top = 0;
do {

http://jqueryvsmootools.com/#mottos
今天开了个小会,讲解了mootools的navative实现,最后也提到目前前端用mootools、技术部用jquery的事情。我是比较喜欢mootools的,于是从javaeye的mootools圈子里找了篇经典分析文章。原文很长,上面是链接,我就翻译了一段看看。
格言反应了一切
如果你打开jquery首页,页面顶部是这样说的:
jquery是一个快速的、简单的javascript库,它为快速web开发者们简化了遍历html的document、事件句柄、动画、ajax接口。jquery的设计目的就是改变你书写javascript的方式。
而如果你进入mootools的网站,则会发现这句话:
mootools是一个健壮的、模块化、面向对象的javascript库,它是为中高级javascript程序员设计的。借以其优雅的设计、良好的文档、清晰的API,它能让你书写出强健的、灵活的、跨浏览器的代码。
我想这是一个真实的总结。如果你问我(你正在读这篇文章,所以在这里假设你问我),并且问的并不是孰优孰劣,而是哪个对你而言更适合?答案是:这两个框架并不是尝试做相同的事情。虽然在功能方面它们有相同之处,但它们做的事情却完全不同。
jquery描述自己时提到了HTML、事件、动画、ajax和web开发者,mootools则谈到了面向对象以及编写强健、灵活的代码。jquery期望改变你书写javascript的方式,mootools则为中高级javascript程序员而设计。
一定程度上考虑一个javascript库的方法是将其与工具箱作比较。mootools尝试将javascript语言本身变得更加理想(根据mootools作者所说),提供的API就像是javascript语言本身具有的或者增强的,并不仅仅限于DOM。jquery则是个让你轻松地使用独立的集合方法来友好控制DOM的工具箱。大部分人在写javascript程序时都将主要精力放在DOM上,所以在很多情况下,jquery正是你想要的。
当你用mootools写代码时,大部分情况下你感觉你就是在写javascript。如果你对javascript作为一门语言来说不感兴趣,那么学习mootools就是件很吃力的事情。反之若觉得javascript是门有趣、强健、富有表现力的语言,那么我的个人意见是,mootools则是更好的选择。