[OpenLayers-Users] OpenLayers 2.2 breaks with jQuery
Daniel Kastl
daniel.kastl at gmx.de
Tue Nov 21 23:17:21 EST 2006
Hi Brent,
Sorry, but I missunderstood your answer.
I also tried your way and changed the order of OpenLayers and jQuery
without renaming the $ to JQ, but it didn't help either. Usually the
renaming of $ should be the more save way, I think.
Daniel
Daniel Kastl wrote:
> Hi Brent,
>
> That's what I did, see:
>
> <script type="text/javascript"
> src="http://jquery.com/src/jquery-latest.pack.js
> <http://jquery.com/src/jquery-latest.pack.js>"></script>
> <script type="text/javascript">
> JQ = $; // rename $ function to use jQuery together with Prototype
> </script>
> <script type="text/javascript" src="./2.2/lib/OpenLayers.js"></script>
>
> It was working as expected with 2.1, but with 2.2 it doesn't work
> anymore. I didn't call any jQuery function, just included the lines
> above and it gives an error. In the 2.2 release mail, there was written:
>
> * Refactoring the use of Prototype.js. Rather than using
> Prototype.js, OpenLayers has integrated the important pieces of the
> Prototype framework into OpenLayers, and removed offending functions
> like Object.extend(). This means that there should no longer be
> conflicts between OpenLayers and different versions of Prototype, or
> any other Javascript framework.
>
> I guess, it's because of changes to the original Protoype library.
>
> Daniel
>
>
> Brent Pedersen wrote:
>
>> hi, i havent tried this, but i think you shouldnt have to alias jquery
>> as JQ, just use jQuery (where you'd normally use $), and include it
>> _after_ any prototype/OL stuff.
>> the jquery srcipt checks if $ exists, if so, it doesnt create that
>> namespace.
>> -brent
>>
>>
>> On 11/21/06, *Daniel Kastl* <daniel.kastl at gmx.de
>> <mailto:daniel.kastl at gmx.de>> wrote:
>>
>> Hi list,
>>
>> While with version 2.1 of OpenLayers there was no problem to use both
>> OpenLayers' Prototype and jQuery javascript framework, it doesn't work
>> anymore with version 2.2.
>>
>> Firebug error message:
>> "this.div.appendChild is not a function" in Map.js (line 136):
>> this.div.appendChild(this.viewPortDiv);
>>
>> I followed the jQuery guide how to run jQuery together with Prototype
>> library ( http://jquery.com/docs/PrototypeAndJQuery/)
>>
>> I tested with the Wiki example:
>>
>> <?xml version="1.0" encoding="UTF-8" ?>
>> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
>> "xhtml1-transitional.dtd">
>> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="jp" lang="jp">
>> <head>
>> <meta http-equiv="Content-type" content="text/html; />
>> <title>OpenLayers Demo</title>
>>
>> <!-- jQuery -->
>> <script type="text/javascript"
>> src="http://jquery.com/src/jquery-latest.pack.js
>> <http://jquery.com/src/jquery-latest.pack.js>"></script>
>> <script type="text/javascript">
>> JQ = $; // rename $ function to use jQuery together with
>> Prototype
>> </script>
>>
>> <!-- OpenLayers -->
>> <script type="text/javascript"
>> src="./2.2/lib/OpenLayers.js"></script>
>> </head>
>>
>> <body>
>> <div id="map" style="width:100%;height:100%;"></div>
>> <script defer="defer" type="text/javascript">
>> var map = new OpenLayers.Map('map');
>> var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
>> "http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
>> map.addLayer(wms);
>> map.zoomToMaxExtent();
>> </script>
>> </body>
>>
>> Would be nice somebody knows a solution how to use both,
>> OpenLayers and
>> jQuery.
>>
>> Daniel
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at openlayers.org <mailto:Users at openlayers.org>
>> http://openlayers.org/mailman/listinfo/users
>>
>>
>>
>
> _______________________________________________
> Users mailing list
> Users at openlayers.org
> http://openlayers.org/mailman/listinfo/users
>
>
More information about the Users
mailing list