Foros del Web » Programando para Internet » Javascript » Frameworks JS »

No me cargan los scripts

Estas en el tema de No me cargan los scripts en el foro de Frameworks JS en Foros del Web. Buenas Me ocurre que, cuando llamo mediante AJAX a una pagina externa, si esta tiene scripts, no los carga, dando entonces error en las llamdas ...
  #1 (permalink)  
Antiguo 08/02/2009, 17:23
 
Fecha de Ingreso: noviembre-2006
Mensajes: 102
Antigüedad: 17 años, 5 meses
Puntos: 1
No me cargan los scripts

Buenas

Me ocurre que, cuando llamo mediante AJAX a una pagina externa, si esta tiene scripts, no los carga, dando entonces error en las llamdas a las diferentes funciones que haga la pagina.

En particular, tengo una pagina que llama mediante ajax a otra pagina que muestra un mapa de google, pero no me carga los scripts, que estan colocados en la cabecera. Sin embargo, cuando abro dicha pagina a parte (sin llamarla desde la primera pagina) si me funciona.

Esto mismo tambien me ha pasado en otros casos, que he solucionado cargando los scripts desde la pagina "llamante" en lugar de cargarlos en la pagina "llamada", algo que no comprendo, pero que funciona.

Otra cosa que me ocurre y que es parecido a esto, es que los estilos de la pagina llamada los tengo que cargar desde la pagina llamante, ya que si lo hago al reves (como deberia ser) no me funciona (en FF si me funciona, pero no en Safari).

Alguna respuesta?

P.D.: se que es un poco acertijo, pero no he sabido exponerlo mejor :-p
  #2 (permalink)  
Antiguo 08/02/2009, 18:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: No me cargan los scripts

Hola jemarquesini,

Revisa esto: http://www.forosdelweb.com/f77/howto...e-ajax-510438/

Saludos
  #3 (permalink)  
Antiguo 10/02/2009, 11:12
 
Fecha de Ingreso: noviembre-2006
Mensajes: 102
Antigüedad: 17 años, 5 meses
Puntos: 1
Gracias !!!

Bueno, he estado leyendo y releyendo la discusion, y despues de mucho darle vueltas, creo que he empezado a entender un poco el funcionamiento de la solucion que da Maborak.

Supongo que lo que hace es que recoge en la variable scs los scripts, luego imprime por pantalla la pagina que se ha cargado, y a continuacion hace funcionar los scripts que se habian recogido en scs.

La cosa es que, en mi caso, sigo sin conseguir hacer funcionar los scripts. El ejemplo que os voy a poner es sencillo. Se trata de llamar via AJAX a una pagina que muestra un mapa de google. En la cabecera incluyo las llamadas a los scripts:

Código:
<script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=userCode" type="text/javascript"></script>
<script type="text/javascript" src="scripts/funciones_mapa.js">
donde el archivo "funciones_mapa.js" contiene:

Código:
function iniciar_mapa(){
    if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map"));
	mapTypeControl = new GMapTypeControl();
	map.addControl(mapTypeControl); // Control de tipo de mapa
	map.enableScrollWheelZoom();
	map.setCenter(new GLatLng(35.2488340192044,-7.61080932784631), 7); // Centra el mapa en el punto indicado		
    }
}
A continuacion, en lugar de llamar a la funcion iniciar_mapa() desde la etiqueta body (como habitualmente se hace con los mapas de google), la coloco entre etiquetas <script> al final del codigo, para que extractScript() la detecte.

Sin embargo, todo esto me da un error, y es que no reconoce los scripts que estoy llamando en la cabecera, aun sin utilizar el stripScript(), como recomendaba Maborak. En este caso, no reconoce iniciar_mapa(), ya que, al parecer, no ha cargado el archivo funciones_mapa.js. De esto me he dado cuenta cuando, en lugar de llamar a este archivo, he colocado la funcion directamente al final del codigo. En ese caso, lanza la funcion pero me dice que GBrowserIsCompatible no esta definida, lo que me hace pensar que tampoco esta llamando al script de google.

Por lo que, aun sin usar el stripScript(), sigue sin llamar a los archivos correspondientes.

¿Alguna idea?

Última edición por GatorV; 11/02/2009 a las 11:46
  #4 (permalink)  
Antiguo 10/02/2009, 14:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: No me cargan los scripts

Lo que puedes hacer es incluir primero el script de las APIs de Google en el archivo desde donde se cargan los requests, y luego en el que traes por AJAX incluyes en el Body del mensaje entre <script> y </script> el código para crear y hacer funcionar el mapa.

Saludos
  #5 (permalink)  
Antiguo 11/02/2009, 01:20
Avatar de yobain  
Fecha de Ingreso: febrero-2009
Ubicación: Mérida
Mensajes: 25
Antigüedad: 15 años, 3 meses
Puntos: 1
Sonrisa Respuesta: No me cargan los scripts

Mira con prototype se puede resolver el problema que tienes
Código HTML:
function cargar(url,divcon)
{
$(divcon).innerHTML='cargando';
new Ajax.Updater($(divcon),url, {method:'get',evalScripts:true });
}
con esto que es que la respuesta que te devolvio aparezca con javascript

Código HTML:
evalScripts:true
saludos espero te sirva

Última edición por GatorV; 11/02/2009 a las 11:46
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:45.