Salve a tutti,
sto lavorando ad un'applicazione per la gestione dei dati geografici (che novità!), come nella migliore delle tradizioni utilizzo postgres + postgis + openlayers + geoserver + jquery (per gli effetti speciali) + jquery layout (per impacchettare il tutto). L'utente ha una lista di siti generata da una query, grazie alla quale mi tiro fuori un po' di attributi alfanumerici e il bbox; una semplice funzione mi permette di gestire dinamicamente l'extent della mappa cliccando sul nome di un sito. Fin qui tutto bene, la funzione funziona. A questo punto volevo che la mappa venisse visualizzata in una pop-up di jquery (modal dialog), e qui vengono i problemi: cliccando su un sito la pop-up parte ma la mappa non viene visualizzata. Per essere più precisi: i controlli sono visibili ma, ad esempio, invece delle coordinate mi compare quella fastidiosissima scritta "NaN, NaN". Per la cronaca, firebug non riporta errori anche se nella chiamata al server la risposta mi da: <ServiceException> java.lang.RuntimeException: Parsing failed for BBOX: java.lang.IllegalArgumentException: Points of LinearRing do not form a closed linestring Parsing failed for BBOX: java.lang.IllegalArgumentException: Points of LinearRing do not form a closed linestring Points of LinearRing do not form a closed linestring </ServiceException> Se elimino la funzione di jquery l'errore sparisce e la mappa viene visualizzata. Mi sfugge qualcosa o le librerie (jquery e openlayers) vanno in conflitto? Ho girato la stessa domanda alla mailing list di openlayers ma volevo anche la vostra opinione. Grazie mille -beppe- _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 485 iscritti al 20.11.2010 |
Allora, ho fatto un po' di prove e sembra gli dia noia un parametro del
modulo "dialog" di jquery. Se, infatti, utilizzo questi parametri tutto funziona alla perfezione: $( "#map" ).dialog({ title: 'Map preview', width: 600, height: 500, position: [50,50], resizable: false }); Ma se lo modifico in questo modo non funziona più: $( "#map" ).dialog({ autoOpen: false, title: 'Map preview', width: 600, height: 500, position: [50,50], resizable: false }); $('#mapPreview').click(function() { $('#map').dialog('open'); return false; }); Il problema, immagino, sia il parametro "autoOpen" che, se ho capito bene, fa casino con l'inizializzazione della mappa. Peccato sia proprio il parametro che mi serve per ottenere l'effetto pop-up! Conoscete un modo per ovviare al problema? Per completezza di informazione vi scrivo la funzione che uso per lo zoom: function ZoomSite(xmin,xmax,ymin,ymax){ var bbox = new OpenLayers.Bounds(xmin,xmax,ymin,ymax); console.log(bbox); return map.zoomToExtent(bbox); } ... e come viene richiamata all'interno di un ciclo for: echo "<li><a href=\"javascript:ZoomSite($bound)\" id=\"mapPreview\" >" . $site . "</a> : " . $bound . "</li>"; Confido in voi Grazie -beppe- Il giorno gio, 25/11/2010 alle 21.15 +0100, beppe ha scritto: > Salve a tutti, > sto lavorando ad un'applicazione per la gestione dei dati geografici > (che novità!), come nella migliore delle tradizioni utilizzo postgres + > postgis + openlayers + geoserver + jquery (per gli effetti speciali) + > jquery layout (per impacchettare il tutto). > > L'utente ha una lista di siti generata da una query, grazie alla quale > mi tiro fuori un po' di attributi alfanumerici e il bbox; una semplice > funzione mi permette di gestire dinamicamente l'extent della mappa > cliccando sul nome di un sito. > > Fin qui tutto bene, la funzione funziona. > > A questo punto volevo che la mappa venisse visualizzata in una pop-up di > jquery (modal dialog), e qui vengono i problemi: cliccando su un sito la > pop-up parte ma la mappa non viene visualizzata. Per essere più precisi: > i controlli sono visibili ma, ad esempio, invece delle coordinate mi > compare quella fastidiosissima scritta "NaN, NaN". > > Per la cronaca, firebug non riporta errori anche se nella chiamata al > server la risposta mi da: > <ServiceException> > java.lang.RuntimeException: Parsing failed for BBOX: java.lang.IllegalArgumentException: Points of LinearRing do not form a closed linestring > Parsing failed for BBOX: java.lang.IllegalArgumentException: Points of LinearRing do not form a closed linestring > Points of LinearRing do not form a closed linestring > </ServiceException> > > Se elimino la funzione di jquery l'errore sparisce e la mappa viene visualizzata. > > Mi sfugge qualcosa o le librerie (jquery e openlayers) vanno in conflitto? > > Ho girato la stessa domanda alla mailing list di openlayers ma volevo anche la vostra opinione. > > Grazie mille > > -beppe- _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 485 iscritti al 20.11.2010 |
Free forum by Nabble | Edit this page |