FAQ |
Kalender |
2009-08-14, 04:01 | #1 | ||
|
|||
Medlem
|
<script type="text/javascript">
var bolagsadress = "<? echo $fakta->Adress;?>"; function initialize() { if (GBrowserIsCompatible()) { map = new GMap2(document.getElementById("karta")); map.setCenter(new GLatLng(37.4419, -122.1419), 13); geocoder = new GClientGeocoder(); map.setUIToDefault(); GClientGeocoder.setBaseCountryCode(se); } } function showAddress(address) { if (geocoder) { geocoder.getLatLng( address, function(point) { if (!point) { alert(address + " not found"); } else { map.setCenter(point, 13); var marker = new GMarker(point); map.addOverlay(marker); marker.openInfoWindowHtml(address); } } ); } } </script> ^Det ligger i head. <body onload="initialize(); showAddress(bolagsadress)" onunload="GUnload()" > Funkar ej. showAddress(bolagsadress); funkar överallt med alla event callers i hela dokumentet, men VÄGRAR laddas på onload. onmouseover="showAddress(bolagsadress)" på wrapper diven gör så att kartan går till den adressen den ska, t.ex det är ingen fråga om hjälp med google maps api, utan hur fan man laddar just denna funktion automatiskt tillsammans med initialize()? känns som att jag har missat nån skitsak någonstans, och JS är verkligen inte min starka sida, men har aldrig haft problem med att ladda flera funktioner i onload så fattar inte vad som händer. Suttit med grejen till 3 på natten nu, e smått irriterande, speciellt då jag får det att funka överallt förutom där jag vill :P <script type="text/javascript"> function startaAlla() { initialize(); showAddress(bolagsadress); } window.onload = startaAlla; </script> Funkar inte heller. Finns inte någon annan js på hela sidan. /Lost |
||
Svara med citat |
2009-08-14, 12:38 | #2 | |||
|
||||
Har WN som tidsfördriv
|
Ditt sista försök borde funka, du skulle kunna testa detta även om det typ är samma sak.
Kod:
window.onload=function() { initialize(); showAddress(bolagsadress); } |
|||
Svara med citat |
2009-08-14, 14:50 | #3 | ||
|
|||
Medlem
|
Ja, det borde ju funka. Men det gör det inte :S
initialize(); laddas ju utan problem. Men showAddress vägrar laddas med onLoad, hur jag än gör. <div onMouseOver="showadress(bolagsadress)"></div> funkar utan problem t.ex Är helt lost.. finns det något annat smidigt sätt att ladda det utan att användare ska behöva klicka på något? Man blir ju så irriterade för det SKA funka :S |
||
Svara med citat |
2009-08-14, 15:26 | #4 | ||
|
|||
Medlem
|
Har löst problemet, denna kod funkar.
<script type="text/javascript"> //<![CDATA[ var geocoder; var map; var address = "<? echo $fakta->Adress;?>"; function load() { map = new GMap2(document.getElementById("karta")); map.setUIToDefault(); geocoder = new GClientGeocoder(); geocoder.getLocations(address, addToMap); } function addToMap(response) { place = response.Placemark[0]; point = new GLatLng(place.Point.coordinates[1], place.Point.coordinates[0]); map.setCenter(point, 13); marker = new GMarker(point); map.addOverlay(marker); marker.openInfoWindowHtml(place.address); } //]]> </script> <body onload="load()" onunload="GUnload()"> |
||
Svara med citat |
Svara |
|
|