Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [js]Google API - maps
Tasilvar
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 13.12.2009
Skąd: Pyrzyce

Ostrzeżenie: (0%)
-----


Witam, podczas tworzenia aplikacji w oparciu o google api natknąłem się na problem związny z przejściem przez "warunek". W skórcie pisząc, mając aktualnie kod, (którego zadaniem jest pokazywanie współrzędnych punktu na mapie) :


Kod
//--------------------------------------------------------------------------------------------------------
//--- Google API Maps v2
//--------------------------------------------------------------------------------------------------------
//----------------------- po załadowaniu okna odpal funkcję pokaz_mape -----------------------------------
window.onload = pokaz_mape;
var api_maps;
var marker_default;
var punkt_x;
var punkt_y;
var zoom;
function pokaz_mape() {
//-------------------- sprawdzenie kompatybilności przeglądarki -------------------------------------------
if(GBrowserIsCompatible()) {
//------- zbudowanie kontrolek na mapie -------------------------------------------------------------------
api_maps = new GMap2(document.getElementById("mapform"));                                  
api_maps.addControl(new GLargeMapControl());                                              
api_maps.addControl(new GScaleControl());                                                  
//------- dodawnie alternatywnej ikony -------------------------------------------------------------------
var ikona = new GIcon();
ikona.image = "hospital.png";
ikona.iconAnchor = new GPoint(32, 32);                      
ikona.iconSize = new GSize(32,32);                          
//------- atrybuty punktów -------------------------------------------------------------------
var geo_x = parseFloat(53.14656827755494); geo_y = parseFloat(14.895411729812622);            
var tytul = "Przykładowy znacznik";                                                          
marker_default = new GMarker(new GLatLng(geo_x,geo_y),{title:tytul, icon:ikona});            
api_maps.addOverlay(marker_default);                                                        
//----- przesuwanie markeru po mapie -----------------------------------------------------------------
api_maps.setCenter(new GLatLng(geo_x, geo_y),15);
GEvent.addListener(api_maps,'click',function(marker_default,punkt) {                      
punkt_x = marker_default.getPoint().lng();                                                // te zmienne tj. punkt_x
punkt_y = marker_default.getPoint().lat();                                                // punkt_y
zoom = api_maps.getZoom();                                                               // oraz zoom
if(marker_default) {                                                                      
alert('g');  //działa, po kliknięciu pojawa się alert i współrzędne punktu

}
else if(punkt) {                                                                          
alert('h');   // w tym warunku w ogóle nie działają (czemu? nie wiem)
api_maps.clearOverlays();                                                              
var marker_default = new GMarker(punkt,{title:tytul, icon:ikona});                      
api_maps.addOverlay(marker_default);                                                    
}
//------ napis z parametrami geograficznymi ----------------------------------------------------------
var napis = "Szerokosc : "+punkt_x+"<br/> Długosc:  "+punkt_y+" <br/> Zoom: "+zoom;
var szer = punkt_x;
var dl = punkt_y;
var pokaz_wspolrzedne = document.getElementById('wspolrzedne');
pokaz_wspolrzedne.innerHTML = napis;
var szerokosc_geo = document.getElementById('szerokosc_geo');
szerokosc_geo.value = szer;
var dlugosc_geo = document.getElementById('dlugosc_geo');
dlugosc_geo.value = dl;
});
GEvent.trigger(marker_default,'click');  
//---------------
};
}


Chcę aby warunek wywoujący się po kliknięciu dowolnego punktu na mapie był wykonywalny, zaznaczając, że przy kliknięciu na sam marker drugi określający warunek zostaje spełniony.

Mam nadzieję że w miarę jasno opisałem swój problem. Czekam na wasze sugestie.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 07:26