En mi pagina principal.php tengo un div sobre el que cargo cotenido de otras páginas mediante AJAX.
Al intentar cargar mapa.php en ese DIV tengo el problema de que no lee la parte de código javascript donde cargo el mapa, y he leido que debe de ser por el crossdomain que hace referencia a un dominio externo, pero no se cómo solucionarlo la verdad.
Si mapa.php la cargo directamente en el navegador sin cargarla en un div ni nada sí funciona perfectamente y muestra el mapa.
Inicialmente tenía problemas con todo el javascript de esa página que no se cargaba en el div pero conseguí solucionarlo. Ahora el javascript que no se reconoce es únicamente el del mapa. He probado a usar Ajax para cargar el mapa, con el API de AJAX pero tampoco funciona.
¿Cómo puedo solucionarlo porfavor?
A continuación os pongo el trozo de código para cargar el mapa, primero en javascript y luego con el API de Ajax.
API Javascript
-------------------------
Código:
script type="text/javascript" src="url de googlemaps"></script> <script type="text/javascript"> //<![CDATA[ function load() { if (GBrowserIsCompatible()) { var map = new GMap2(document.getElementById("mapa")); map.setCenter(new GLatLng(42.33989,-7.866),13); } } window.onload=load //]]> </script> <div id="mapa" ></div>
---------------
API AJAX
Código:
<script type="text/javascript" src="url de googlemaps"></script> <script type="text/javascript"> //<![CDATA[ google.load("maps", "2", {"callback" : initialize}); function initialize() { if (GBrowserIsCompatible()) { var map = new google.maps.Map2(document.getElementById("mapa")); map.setCenter(new google.maps.LatLng(37.4419, -122.1419), 13); } } google.setOnLoadCallback(initialize); //]]> </script> <div id="mapa" ></div>
Decir que los 2 casos funcionan perfectamente cargados directamente sobre el navegador, el problema es cuando trato de cargar la página php dentro del div de la otra página principal.php mediante AJAX, no reconoce la parte javascript del mapa.