Ejemplos de eventos en Javascript. Onabort

  • Por
Vemos enlaces a diversas aplicaciones prácticas donde se tratan eventos y ofrecemos un nuevo ejemplo para el evento onabort.

A lo largo de los manuales I y II de Javascript, así como del Taller, hemos mostrado muchos ejemplos de utilización de los manejadotes de eventos. Aquí veremos ejemplos sencillos que se nos ocurren para utilizar otros manejadotes que no hemos visto todavía, aunque antes podemos hacer una lista de algunos ejemplos publicados anteriormente que deberían servir de ayuda para ir captando la práctica de el manejo de eventos.

Evento onabort

Veamos un primer ejemplo, en este caso sobre el evento onabort. Este evento se activa al cancelarse la carga de una página, ya sea porque se pulsa el botón de cancelar o porque el usuario se marcha de la página por otro enlace.

Este ejemplo contiene una imagen que tiene el evento onabort asignado para que se ejecute una función en caso de que la imagen no llegue a cargarse. La función informa al usuario de que la imagen no se ha llegado a cargar y le pregunta si desea cargarla otra vez. Si el usuario contesta que sí, entonces se pone a descargar la imagen otra vez. Si dice que no, no hace nada. La pregunta se hace con una caja confirm de Javascript.

<html> <head> 
   	<title>Evento onabort</title>

<script> 
function preguntarSeguir(){ 
   	respuesta = confirm ("Has detenido la carga de la página y hay una imagen que no estás viendo.n¿Deseas cargar la imagen?") 
   	if (respuesta) 
      	document.img1.src = "http://ipaginate.iespana.es/ipaginate/desarrollogrande.gif" 
} 
</script>

</head> 
<body> 
<img name=img1 src="http://ipaginate.iespana.es/ipaginate/desarrollogrande.gif" width=500 height=458 alt="Imagen que pesa 115K" border="0" onabort="preguntarSeguir()"> 
<br> 
Pulsa el botón de parar la carga de la página y se pondrá en marcha el evento onerror

</body> 
</html>

Este ejemplo estaría bien si siempre se detuviese la carga por pulsar el botón de cancelar, pero si lo que pasa es que el usuario ha cancelado por irse a otra página a través de un enlace, saldrá la caja de confirmación pero no ocurrirá nada independientemente de lo que se responda y el navegante se marchará irremediablemente a la nueva página.

Se puede ver en una página aparte.

Autor

Miguel Angel Alvarez

Miguel es fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Comenzó en el mundo del desarrollo web en el año 1997, transformando su hobby en su trabajo.

Compartir

Comentarios

SANTIAGO

17/9/2003
hola el manual es muy bueno y aparte es exactamente lo que necesitaba para un sistema pero el problema es uqe no me funciona, por fabor denme una mano me copie el codigo y hasta me baje el zip y ninguno de los dos funciono estoy usando IE 6 y dreamweaver MX

el script es este: http://www.desarrolloweb.com/articulos/1015.php

por fabor denme una mano es muy muy importante para mi, gracias a todos

ingrid

14/9/2004
estoy trabajando con html y javascript necesito saber como puedo dejar una lista de selección con el primer campo por defecto con espacio, al yo hacer click que me aparescan los datos de la lista

Patrón

01/11/2006
Buenas, quisiera saber el evento onabort en cuales navegadores funciona?? por ahora solo me ha funcionado en ie para mac, pero ni en firefox, ni en safari, gracias.

TyrantRC

14/2/2011
informacion para los que intenten este ejemplo
onabort (HTML attribute)
Syntax: onabort="warnMissingImages();"

Description: This event is triggered if the user actively aborts the loading of an image by pressing the stop button.

Value: No fixed value - could be a call to one or more defined functions or a simple alert() statement.
Compatibility

Non-standard event defined by Microsoft for use in Internet Explorer. May work in some other browsers but cannot be reliably used. Compatibility for this non-standard attribute not tested.


OK repito " May work in some other browsers but cannot be reliably used" y traduzco para los flojos: Talvez funcione en algunos otros exploradores, pero su uso no puede ser confiable.

Es decir este evento solo esta disponible para exploradores no estandarizados IE... Es muy viejo y su uso actualmente esta en el sentido de lo obsoleto a lo que programacion se refiere

Mi recomendacion personal para la recarga de imagenes rotas, es el uso de un evento Onclick() que proporcione la recarga directa de la imagen

Saludos