Ninguna de las respuestas proporcionadas aquí en desbordamiento de pila trabajaría para mí. Estoy usando la última y mejor FireFox para el desarrollo y otras aquí uso IE, Chrome, etc ... Cada vez que hice una llamada al AJAX de jQuery, no pasaría nada y SÓLO cuando la llamada AJAX regresara, ¿cambiaría el cursor? Entonces estaría atrapado en el cursor de espera. Entonces, la llamada se realiza, el servidor devolvió la nueva información, se mostró la información y luego ¡WHAM! El cursor de espera se muestra y no desaparecerá. Intenté TODAS las respuestas dadas.Las cosas .ajaxXXXX estaban siendo llamadas. (Puse una ALERTA ("AQUÍ"); en las funciones y esos "AQUÍ" aparecieron todo el tiempo. Cada llamada. Muy deprimente.
Así que fui "Ok, las cosas nuevas no trabajo. ¿Qué hay de ir a la vieja escuela? "Sé que es torpe hacerlo, pero este no es un gran programa en el que estoy trabajando. Es solo un pequeño editor para que muchas personas puedan editar nuestra base de datos al mismo tiempo. Nunca voy a ver la luz de internet. Solo la intranet. :-) De todos modos, esto funciona y funciona terriblemente. Debe proporcionar su propio cursor de espera. Acabo de sacar una de Google Images para usar.
En primer lugar - el código HTML:
<div id='wait' name='wait'
style='position:absolute;top:-9999px;left:-9999px;background-color:rgba(0,0,0,0.3);'>
<table border='0' cellspacing='0' cellpadding='0' style='width:100%;height:100%;'><tbody>
<tr><td style='width:100%;height:50%;'> </td></tr>
<tr><td align='center'><img id='cursor' name='cursor' src="images/wait.gif"></td></tr>
</tbody></table>
</div>
Entonces el jQuery:
function waitCursor()
{
$('#wait').css({
'top' : '0px',
'left' : '0px',
'width' : '100%',
'height' : '100%'
});
}
function defCursor()
{
$('#wait').css({
'top': '-9999px',
'left' : '-9999px',
'width' : '0%',
'height' : '0%'
});
y
$(document).ajaxStart(function(){ waitCursor(); })
.ajaxComplete(function(){ defCursor(); })
.ajaxStop(function(){ defCursor(); });
la vieja escuela, pero también sencilla. Solo tiene un DIV con una mesa. La tabla solo tiene filas. El primero es el 50% de la altura de la pantalla completa. El segundo simplemente centra el cursor de espera en la pantalla. Siempre puede hacer que la altura del primero sea del 45% o la mitad de la altura de la pantalla menos la mitad de la altura de la imagen. Pero como dije, esto es solo para un programa interno simple. Lo que pasa es que esto funciona en todos los navegadores sin intentar pasar por muchos aros para que aparezca. He visto algo similar en otros sitios web importantes. Así que, obviamente, otros se han cansado de los navegadores que no muestran el cursor de espera cuando es necesario y la verdad que contar. Recordé haber visto esto y me pregunté qué difícil sería replicar. Ahora lo sé, no es difícil en absoluto.
¡Diviértete!
En mi caso esto no está funcionando, lo he intentado –
no funciona más! – MSS