This was the core issue I dealt with when I built GenevaJS. I could probably
strip out some unnec. stuff and create an adapter for you... or you can feel
free to tear apart genevajs yourself and build your adapter.


On Thu, Aug 27, 2009 at 7:59 PM, pstickne <> wrote:

> Okay, so here it comes again... (I hope not)
> Recently I've started using Prototype and jQuery together -- I use all
> the Prototype extension methods and the jQuery "$".  jQuery
> documentation offers several solutions for working alongside of
> Prototype.  However, there does not seem to be a way to have a root-
> level $ for jQuery while still having Prototype work as expected (if $
> is jQuery $ then Prototype features are prone to stop working).
> While the jQuery solutions do work in some cases, they did not offer
> an easy GLOBAL solution.  The amount of existing code in my case that
> uses jQuery (and my desire to keep $ as jQuery $ -- no suggestions
> about replacing jQuery entirely or using $j, please) reveal the real
> issue -- the sharing of $.
> Thus leads me to my solution:
> I have modified prototype.js such that function $ is renamed to $P and
> $$ is renamed to $P and all *internal* Prototype references are to $P
> or $$P. Then I have setup aliases from $ to $P and $$ to $$P.
> Then
> <script src="prototype.js" ...
> <script src="jquery.js" ...
> allows the use of $ for jQuery (with NO ADDITIONAL MODIFICATIONS)
> while allowing the rich prototype decorating of Prototype.
> This allows the use of both Prototype and jQuery seamlessly.  The
> owner of $ is then controlled entirely by load order. Perhaps you
> wanted $ to be Prototype "$" in your code but still have jQuery, then:
> <script src="jquery.js" ...
> <script src="prototype.js" ...
> Now jQuery is still loaded correct, $ is Prototype $. And the jQuery-
> suggested jQuery/Prototype interoperability suggestions may be used.
> Anyway, all this typing to present the case of a trivial modification
> to prototype.js so that it is more interoperable with jQuery (and
> potentially other uses of $) and I humbly ask that the idea is
> considered.
> I am new to Prototype but I can see not reason for a negative impact
> of this solution. The names I chose, $P and $$P were arbitrary and
> could easily be more descriptive. If third-party libraries that used
> Prototype also followed suit (using $P/$$P) then they should also be
> immune to jQuery (or other) overloading of $.
> >

You received this message because you are subscribed to the Google Groups 
"Prototype: Core" group.
To post to this group, send email to
To unsubscribe from this group, send email to
For more options, visit this group at

Reply via email to