El Google Map que tengo solo está siendo renderizado parcialmente y está centrado en el punto equivocado (debe centrarse en el marcador). Ver más abajo:Google Map muestra solo parcialmente
Ahora para añadir un poco más de detalle:
- Funciona bien en IE
- Parece que en la captura de pantalla en FF y Chrome.
- En Chrome ist funciona tan pronto, al abrir la consola de desarrollador
Especialmente el último punto es el que yo estoy preguntando acerca más. Supongo que al abrir la consola de desarrollador se vuelve a ejecutar algo de JavaScript.
Entonces: ¿Puedo llamar a una función para volver a ejecutar JavaScript, como lo hace la consola de desarrollador?
Este es el código:
<script type="text/javascript">
{literal}
function initialize() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map")); //, { size : {width:600,height:600} }
map.addControl(new GLargeMapControl3D());
map.addControl(new GMapTypeControl());
map.addControl(new GScaleControl());
map.setCenter(new GLatLng(51.17689812200107, 9.84375), 5);
map.checkResize();
var geocoder = new GClientGeocoder();
function showPoint(lat, lon) {
if (lat != "" && lon != "") {
var point = new GLatLng(lat, lon);
map.setCenter(point, 10);
var marker = new GMarker(point, {draggable: true});
GEvent.addListener(marker, "dragstart", function() {
// map.closeInfoWindow();
});
GEvent.addListener(marker, "dragend", function() {
var newPoint = marker.getLatLng();
$('#lat').val(newPoint.lat());
$('#lon').val(newPoint.lng());
// marker.openInfoWindowHtml("Neue Koordinaten Lat: "+ newPoint.lat() +" Lon: "+ newPoint.lng());
});
map.addOverlay(marker);
}
}
{/literal}showPoint("{$gmap_lat}", "{$gmap_lon}");{literal}
}
}
{/literal}
Aquí es donde pongo el div:
<fieldset style="-moz-border-radius: 1em; -webkit-border-radius: 1em;">
<legend>Karte</legend>
<div id="map" title="Lage von '{$name}'"><br>Die Karte wird geladen...<br><br>Hinweis: Damit dies funktioniert müssen Sie in Ihrem Browser JavaScript aktivieren</div>
Falls sich der Marker nicht auf der richtigen Position befinden sollte, bewegen Sie diesen mit Ihrer Maus auf die richtige Position.
<br>Länge: <input type="text" id="lat" name="lat" value="{$gmap_lat}">
Breite: <input type="text" id="lon" name="lon" value="{$gmap_lon}">
</fieldset>
Y en el div se aplican las siguientes reglas CSS:
Algunos de código y/o un ejemplo vivo sería muy útil –
suena como una edición CSS - Google Maps utiliza un CSS mucho para dar la impresión del m ap está flotando. Hay un cambio de - aparentemente - una imagen cuadrada (vaya a Mapas, haga clic derecho y haga "Ver imagen", el tamaño de su turno es como el de una imagen). –
@Pekka: Acabo de poner el código allí, sry. – JochenJung