English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Los eventos son operaciones que las aplicaciones web pueden detectar.
jQuery proporciona métodos simples para adjuntar gestores de eventos a las selecciones.
Se ejecutará la función proporcionada cuando ocurra el evento.
Aquí hay algunos ejemplos de eventos:
Carga de la página web
Hacer clic en un elemento
Mover el ratón sobre un elemento
Enviar un formulario HTML
Teclas en el teclado, etc.
En jQuery, la mayoría de los eventos DOM tienen métodos jQuery equivalentes.
Para asignar el evento de clic a todos los párrafos en la página, realice lo siguiente:
$("p").click();
El siguiente paso es definir lo que debe ocurrir cuando ocurre el evento. Debe pasar una función al evento:
$("p").click(function(){ // Acciones a realizar... });
Este ejemplo oculta un párrafo en la página al hacer clic en la página:
$("p").click(function(){ $(this).hide(); });Prueba a ver‹/›
Este ejemplo adjunta una función "changeSize" al evento click:
$(document).ready(function() { $("p").click(changeSize); }); function changeSize() { $(this).animate({fontSize: "+=5px"}); }Prueba a ver‹/›
$(document).ready()
jQuery $(document).ready()El método especifica la función que se debe ejecutar cuando el DOM esté completamente cargado.
La siguiente muestra muestra un mensaje al cargar el DOM:
$(document).ready(function() { $("p").text("Ahora el DOM está cargado, puede operarlo."); });Prueba a ver‹/›
click()
jQuery click()El método adjunta una función gestora de eventos al elemento seleccionado.
Al hacer clic en este elemento, se ejecutará esta función:
$("p").click(function(){ $(this).css({"background-color":"#007FFF", "color":"white"}); });Prueba a ver‹/›
mouseenter()
jQuery mouseenter()El método adjunta una función gestora de eventos al elemento seleccionado.
Al entrar el puntero del ratón en este elemento, se ejecutará esta función:
$("p").mouseenter(function(){ $(this).css("background-color", "yellow"); });Prueba a ver‹/›
mouseleave()
jQuery mouseleave()El método adjunta una función gestora de eventos al elemento seleccionado.
Al salir el puntero del ratón de este elemento, se ejecutará esta función:
$("p").mouseleave(function(){ $(this).css("background-color", "lightblue"); });Prueba a ver‹/›
mousedown()
jQuery mousedown()El método adjunta una función gestora de eventos al elemento seleccionado.
Al presionar el botón del ratón en este elemento, se ejecutará esta función:
$("p").mousedown(function(){ $(this).after("<p style='color:red;'>Presionar tecla</p>"); });Prueba a ver‹/›
mouseup()
jQuery mouseup()El método adjunta una función gestora de eventos al elemento seleccionado.
Al soltar el botón del ratón en este elemento, se ejecutará esta función:
$("p").mouseup(function(){ $(this).after("<p style='color:green;'>Soltar tecla</p>"); });Prueba a ver‹/›
keydown()
jQuery keydown()El método adjunta una función gestora de eventos al elemento seleccionado.
Al presionar una tecla en el teclado, se ejecutará esta función:
$("input").keydown(function(event){ $(this).css("background-color", "yellow"); $("span").text(event.type); });Prueba a ver‹/›
keyup()
jQuery keyup()El método adjunta una función gestora de eventos al elemento seleccionado.
Al soltar una tecla en el teclado, se ejecutará esta función:
$("input").keyup(function(event){ $(this).css("background-color", "lightblue"); $("span").text(event.type); });Prueba a ver‹/›
hover()
jQuery hover()los métodos tienen dos funciones y sonmouseenter()ymouseleave()la combinación de métodos.
El siguiente ejemplo cambia el color de fondo de todos<p>el color de fondo del elemento:
$("p").hover(function(){ $(this).css("background-color", "yellow"); }, function(){ $(this).css("background-color", "lightblue"); });Prueba a ver‹/›
jQuery proporcionamétodoun método para responder a cualquier evento en el elemento seleccionado.
usandométodométodos, podemos adjuntar un o más gestores de eventos al elemento seleccionado.
El siguiente ejemplo adjunta el evento click a todos<p>Elemento:
$("p").on("click", function(){ $(this).css("background-color", "coral"); });Prueba a ver‹/›
El siguiente ejemplo adjunta el evento mouseenter a todos<p>Elemento:
$("p").on("mouseenter", function(){ $(this).css("background-color", "coral"); });Prueba a ver‹/›
El siguiente ejemplo adjunta varios programas de eventos a<div>Elemento:
$("div").on("mouseenter mouseleave click", function(){ $(this).text(Math.random()); });Prueba a ver‹/›
jQuery método método elimina elmétodométodo con uno o más programas de eventos asociados.
El siguiente ejemplo procede de<div>Eliminar el evento mousemove del elemento:
$("button").click(function(){ $("div").off("mousemove"); });Prueba a ver‹/›
El sistema de eventos de jQuery se basa en el W3Estandarización del objeto de eventos según el estándar C.
Asegúrate de pasar el objeto de eventos al programa de eventos.
Cada función de manejo de eventos recibe un objeto de eventos que contiene muchas propiedades y métodos.
$("div").on("click", function(event){ alert("El tipo de evento es " + event.type); alert("Target: " + event.target.innerHTML); });Prueba a ver‹/›
La siguiente tabla muestra todos los métodos y atributos del objeto de eventos:
Método/Atributo | Descripción |
---|---|
event.currentTarget | El elemento DOM actual en la fase de burbuja del evento |
event.data | Contiene datos opcionales que se pasan al método del evento cuando se ejecuta el programa de eventos |
event.delegateTarget | Devuelve el elemento que tiene el programa de eventos jQuery asociado |
event.isDefaultPrevented() | Devuelve sievent.preventDefault()Para llamar al evento del objeto |
event.isImmediatePropagationStopped() | Devuelve sievent.stopImmediatePropagation()Para llamar al evento del objeto |
event.isPropagationStopped() | Devuelve sievent.stopPropagation()Para llamar al evento del objeto |
event.metakey | Indica si se presionó la tecla META al desencadenar el evento |
event.namespace | Devuelve el nombre del espacio especificado al desencadenar el evento |
event.pageX | Devuelve la posición del ratón en relación con el borde izquierdo del documento |
event.pageY | Devuelve la posición del ratón en relación con el borde superior del documento |
event.preventDefault() | Evita que el navegador ejecute la operación predeterminada del elemento seleccionado |
event.relatedTarget | Devuelve el elemento que se debe ingresar o salir al mover el ratón |
event.result | Contiene el último valor devuelto por el gestor de eventos desencadenado por el evento especificado/Valor anterior |
event.stopImmediatePropagation() | Evita que se llamen otros programas de manejo de eventos |
event.stopPropagation() | Evita que el evento se propague en el árbol DOM, evitando que cualquier programa padre reciba la notificación del evento |
event.target | Devuelve qué elemento DOM desencadenó el evento |
event.timeStamp | Devuelve el tiempo en el que se creó el evento (en milisegundos desde el epoch) |
event.type | Devuelve qué tipo de evento desencadenó |
event.which | Devuelve la tecla de teclado o el botón del ratón pulsado en el evento |
Para obtener una referencia completa de eventos, por favor visite nuestroManual de referencia de jQuery Events。