作者megaman1206 (megaman)
看板Ajax
标题[心得] jQuery + Prototype
时间Sat Oct 31 17:54:57 2009
jQuery语法简洁有力, 是许多人的最爱
但是在某些地方却也显得不太够用, 得要与其他framework/library互补不足
而在与比较相似的Prototype同时使用时, 却可能产生冲突的问题
目前在google上能找到的相容方法不外乎是jQuery官方提供的:
http://docs.jquery.com/Using_jQuery_with_Other_Libraries
但是大部分情况我们会用jquery比较多, 却要让jquery迁就Prototype
如此用起来反而别扭不少
因此我反其道而行, 打算让Prototype迁就jQuery
Prototype可拆分为三份, Ajax, DOM, 以及扩充Native Language
前两项通常我们都会直接以jQuery处理掉
而最後一部分就是我们通常想拿来补足jQuery不足的部分
看看这精美的工具组:
http://api.prototypejs.org/language_section.html
说到jQuery与Prototype相冲的部分, 都是在DOM的部分
因此若我们只需要Language extension的话, 是不用担心其问题的, 因为这部分没用到$
而好消息是, 我们可以只取得那个部分, 而不用从prototype.js分割出来:
http://github.com/sstephenson/prototype
很清楚可以看到, 在src目录内, 清楚的分成三个部分
而我们所需要的几乎都在lang目录内
除此之外我们也需要prototype.js以及lang.js
所以我们只需要把这些js压缩在一起就可以直接用了(过程就不详述了)
此外我还将去除ajax以及dom的部分使用官方提供的unit-testing验证是否会有问题
一开始还没修改过的时候有些test不会通过, 因为那些都使用到了DOM部分的语法
因此我使用jQuery将Prototype的DOM语法改写(测试部分, 非framework)
最後所有的test都通过了, 也证明了我们是可以只使用其中一部分并与jQuery合作的
最後附上整合压缩过的js档, 以及unit-testing档案
http://megaman.garbagecan.googlepages.com/prototype-lang-1.6.1.zip
以上心得有错请鞭, 谢谢m(_ _)m
--
Messenger 表情符号工具
快速备份以及加入MSN(WLM)表情符号的好工具
http://blog.roodo.com/garbagecan/archives/2646156.html
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.134.1.100
1F:→ ileadu:好酷啊 可是这个你整合压缩版 能有不压缩版的给看吗? 11/01 00:06
2F:→ ileadu:不然prototype.js 都是经过混淆器弄过 看不到里面是啥了 11/01 00:07
3F:→ megaman1206:不过我照官方指引make的时候, 他也只是把那些js 11/01 00:11
4F:→ megaman1206:接起来罢了 11/01 00:11
5F:→ megaman1206:没压缩过的在 unit-testing\assets\prototype.js 11/01 00:12
※ 编辑: megaman1206 来自: 220.134.1.100 (11/01 00:22)
6F:→ ileadu:恩 .. 感恩 11/01 08:38
7F:→ ileadu:你可以弄成英文版 丢到jQuery论坛上了 我想满多人需要的 11/03 10:53
8F:推 aiyswu:看不懂, 能作的只有话加油了 11/05 21:09