Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/06/2008, 15:55
conkis
 
Fecha de Ingreso: mayo-2007
Mensajes: 39
Antigüedad: 17 años, 6 meses
Puntos: 0
problemas funcion "cargando" ajax

hola a todos

El tema esta en que tengo una imagen con un id='cargando' en display:none, si este lo pongo en "block" la imagen aparece en pantalla correctamente, tal y como quiero que salga cuando esta cargando la peticion AJAX

si yo le indico:
Código:
<a onclick="document.getElementById('cargando').style.display='block';; "><img src="imagenes/musica.jpg" alt="musica"></a>
funciona correctamente, pero si le añado la funcion AJAX para que realice la peticion, no me muestra la imagen, aunque si que realiza la peticion AJAX (ie6 y firefox2) sin embargo en opera me funciona.

Código:
<a onclick="document.getElementById('cargando').style.display='block';llamarAjax('galeria_imagenes.php?img_gal=1','galeria'); "><img src="imagenes/musica.jpg" alt="musica"></a>
Funciones javascript:
Código:
function getXMLHTTPRequest()
{
var req = false;
try
  {
    req = new XMLHttpRequest(); /* p.e. Firefox */
  }
catch(err1)
  {
  try
    {
     req = new ActiveXObject("Msxml2.XMLHTTP");
  /* algunas versiones IE */
    }
  catch(err2)
    {
    try
      {
       req = new ActiveXObject("Microsoft.XMLHTTP");
  /* algunas versiones IE */
      }
      catch(err3)
        {
         req = false;
        }
    }
  }
return req;
}

var miPeticion = getXMLHTTPRequest();

function llamarAjax(pagina,subfijo) {
var miAleatorio=parseInt(Math.random()*99999999);
var url = pagina;
miPeticion.open("GET", url+ "&rand=" + miAleatorio, false);
eval("miPeticion.onreadystatechange = respuestaAjax_"+subfijo+"");
miPeticion.send(null);
}

function respuestaAjax_galeria() {
if(miPeticion.readyState == 4) 
{
if(miPeticion.status == 200) 
		{
var miAleatorio=parseInt(Math.random()*99999999);
document.getElementById('cargando').style.display='none';
document.getElementById('oscurecer').style.display='block'; 
document.getElementById('contenido_principal').style.display='block';
document.getElementById('contenido_principal').innerHTML=miPeticion.responseText;
        } 
		else 
		{
		alert("Ha ocurrido un error: " + miPeticion.statusText);
        }
    }
	else
	{
	document.getElementById('cargando').style.display='block';
	}
}
no se que es lo que falla, pero yo quiero que se muestre la imagen en todos los navegadores ¿alguna idea?

saludos y gracias