mam problem z zmienna globalna. sprawa prosta i oczywista, ale niestety z nieznanych mi przyczyn nie chce działać poprawnie. Problem nie tyle jest z google maps, a z funkcja, która krzyczy, ze zmienna nie została zadeklarowana.
var geo; var mapa; function wskaz_punkt(zmienna,zmienna2){ geo.getLatLng(zmienna,function(punkt){ if (!punkt){ alert('Adres nie został automatycznie znaleziony. Wskaż go ręcznie na mapie.'); }else{ mapa.setCenter(punkt, zmienna2); mapa.clearOverlays(); var marker = new GMarker(punkt); mapa.addOverlay(marker); } }); } function mapaStart(zmienna){ if(GBrowserIsCompatible()){ var mapa = new GMap2(document.getElementById("mapka")); mapa.addControl(new GLargeMapControl()); var typyMapy = mapa.getMapTypes(); typyMapy[0].getName= function() { return "Mapa";} typyMapy[1].getName = function() { return "Satelita";} mapa.addControl(new GMapTypeControl()); mapa.enableDoubleClickZoom(); mapa.enableContinuousZoom(); mapa.enableScrollWheelZoom(); if (zmienna == 1){ GEvent.addListener(mapa,'click',function(marker,punkt) { if(marker){ mapa.removeOverlay(marker); }else if(punkt){ mapa.clearOverlays() var marker = new GMarker(punkt); mapa.addOverlay(marker); } }); } geo = new GClientGeocoder(); } }
jak widac sa dwie zmienne globalne. funkcja 'mapaStart' jest wywolywana zaraz po zaladowaniu strony. gdy potem np. wcisne button i wywowam funkcje 'wskaz_punkt('warszawa',5); wyskakuje problem ze zmienna 'mapa', ktora rzekomo nie została zadeklarowana... o co tu chodzi ?
juz dziala
