jQuery 4에서는 이벤트 시스템에 대한 설명을 설명합니다.

마지막 업데이트 : 04/23/2026
  • jQuery 4는 최신 이벤트 시스템과 관련하여 .on() API 중앙에서 이벤트를 미리 확인할 수 있도록 지원합니다.
  • 이벤트 위임 및 선택을 사용하여 간단한 노래를 선택하고, 특히 인터페이스 확장이나 스피커를 확장할 수 있습니다.
  • 신뢰할 수 있는 유형에 대한 지원 및 CSP는 jQuery 4를 사용하여 인체 공학적 요구 사항을 충족하는 데 필요한 사항을 확인했습니다.
  • 존재하는 응용 프로그램에 따라 jQuery 4의 최신 이벤트 모델을 사용하여 기반을 현대화하고 새로운 프로젝트에 대한 API를 기본적으로 사용할 수 있습니다.

jQuery 4 이벤트 시스템

jQuery 4는 현재 진행 중인 이벤트 시스템과 관련하여 많은 것을 알고 있습니다., pero sin renunciar a la filosofía clásica de la librería: 적게 쓰고, 더 많이 하세요. 최신 코드 jQuery를 사용하는 응용 프로그램을 사용하면 이벤트에 대한 진화와 함께 시간이 단축되는 인터페이스를 빠르게 예측할 수 있으며 장치를 쉽게 사용할 수 있습니다.

기본적으로 jQuery 4의 이벤트 시스템은 addEventListener의 간단한 엔볼로션이 아닙니다., sino una capa que Normaliza comportamientos entre navegadores, refuerza la seguridad, mantiene un orden de ejecución claro y ofrece herramientas potentes como la delegacion de eventos y la integración con APIs modernas del navegador. Vamos는 차분한 상태에서 할 일을 설명하고 JavaScript의 기본 버전을 확인하여 실제 버전을 확인해야 합니다.

속성 css 터치 액션
관련 기사 :
CSS 터치 액션 설정: 정밀한 촉각 기능을 사용하세요.

이벤트에 따라 JavaScript 언어 사용

JavaScript를 사용하면 모든 이벤트를 완전히 지배할 수 있습니다.: clics de ratón, movimientos, pulsaciones de teclado, carga de recursos, cambios en formarios 등 Cada una de estas acciones genera una señal discreta asociada a un nodo concreto del DOM.

Un evento no es algo global que ocurre en toda la interfaz, sino que se dispara siempre sobre un elemento específico. Un click sobre un botón dispara un evento click sobre ese botón, no sobre el documento entero. 이 이벤트는 기능 관리(이벤트 핸들러)와 관련하여 진행 과정이 성공적으로 완료되었음을 확인합니다.

Como el motor de JavaScript solo procesa una instrucción a la vez, hace falta una cola de tareas para coordinar los eventos. Cuando ocurre algo interesante —por ejemplo, el usuario pulsa una tecla — el navegador coloca ese evento en una 파견 대기열(cola de despacho). En cuanto la pila de llamadas queda libre, el motor toma el siguiente evento de la cola, ejecuta el manejador asociado hasta el final y solo entonces vuelve a mirar si hay más eventos pendientes.

Un detalle sutil pero importante es que un evento solo entra en la cola si presents al menos un manejador registrado para él. Si no hay nadie escuchando, el navegador simplemente desecha el suceso. Esto explica por qué una interfaz puede parecer "muerta" si olvidamos registrar un Listener para la interacción que esperamos.

De esta arquitectura deriva la llamada “regla de la capacidad de respuesta”: como el hilo 교장 está ocupado mientras corre tu manejador, si este tarda demasiado, todo el sitio parece congelado. Las animaciones se paran, los clics parecen no response y la experiencia de usuario cae en picado.

JavaScript es hacer que cada manejador haga el menor trabajo posible y devuelva el control cuanto antes에 대한 전략 수정. CPU가 많이 필요하기 때문에(예를 들어, 데이터 처리가 설정되지 않은 경우), 작업 시간에 맞춰 작업을 수행하기 위해 10년 단위로 배포하고 작업자에게 setTimeout, requestAnimationFrame 또는 작업자의 배포를 요청해야 합니다.

HTML 및 addEventListener를 통한 이벤트

jQuery 4 이벤트 위임

jQuery 4를 지원하는 데 필요한 JavaScript 기본 이벤트를 다시 확인하는 데 도움이 됩니다.. HTML은 *에 대한 속성을 정의하고, onclick=”miFuncion()”과 함께 Botón에 대해 정의하고, JS(컴포트타미엔토)와 함께 HTML(Mezcla Estructura)의 대략적인 위치를 확인하고 관리자의 코드를 확인합니다.

최신 형식으로 addEventListener를 사용하여 DOM의 nodos del DOM을 지시합니다.. 예를 들어, botón puede registrar varios manejadores para el mismo de evento:

모델로서, addEventListener의 기본 인수는 이벤트와 관련된 이벤트에 포함됩니다. —클릭, 마우스오버, 키다운 등 — 기능에 대한 참조가 몇 번이나 있습니다. Según la especación, si registras varios 청취자, deberían ejecutarse en el orden en que se añadieron, aunque en tornos antiguos no siempre ha sido fiarse de ese matiz para lógica crítica.

Otra Ventaja del API nativo es que puedes adjuntar más de un manejador al mismo origen de evento. 총 가치는 데이터 보호 기능 및 등록 기관 분석에 독립적인 기능에 불과하며 잘못된 클릭에 대한 비난을 표시합니다. 그러나 별도의 책임은 기능에 따라 달라지지 않습니다.

이력 문제는 할 일이 없습니다. los navegadores 구현이 정확합니다.. Internet Explorer는 addEventListener를 통해 AttachEvent를 방지하고, 이벤트 이벤트는 더 이상 사용되지 않으며, 초점 흐림 변경을 방지하기 위한 세부 정보도 제공합니다. Este caos de compatibilidad es una de las razones por las que jQuery se hizo tan Popular: ofrecía una capauniforme por encima de todas esas rarezas.

jQuery 이벤트 시스템 및 .on() 메서드 사용

jQuery 1.7에서 jQuery 4로 통합하면 .on() 라이브러리의 이벤트 시스템 시스템이 통합되었습니다.. 현재는 click(), hover() 또는 바인딩()과 함께 존재하며, .on()에서 종료할 작업을 수행할 때 등록 리스너에 대한 API 통합이 필요합니다.

.on() 승인된 변수 조합 인수의 허용 여부는 간단하고 완전한 시나리오입니다.. El patrón más básico es:

확실하게, 프라이머 매개변수는 문자열을 통해 별도의 이벤트에 대한 다양한 팁을 포함합니다., el segundo es el manejador. jQuery 호출은 요소 선택과 관련하여 특정 기능을 수행하는 데 사용되며 이벤트를 정상화하는 데 사용됩니다.

.on()의 잠재력을 확인하고 이벤트를 위임하기 위한 선택기 중개자를 선택할 수 있습니다.. En ese caso, la forma General es:

Cuando usamos estavariante, el manejador no se adjunta directamente a cada elemento hijo, sino a un ancestro común. jQuery는 DOM 버블링을 승인합니다. 원래 요소 개체의 원래 개체, asciende por sus padres y, acando alcanza el nodo donde se hizo .on(), se comprueba si event.target 일치 선택기 위임과 일치합니다. 일치합니다. 처리자를 확인하세요.

Además, .on() puede recibir un objeto donde las claves son cadenas de eventos y los valores son funciones. Esto는 다양한 청취자에게 등록 기관을 허용하여 sobre los mismos elementos, manteniendo el código más Compacto y expresivo를 허용합니다.

Este diseño tiene otra cara interesante: puedes pasar datos estáticos en el registro del evento usando el parámetro data. jQuery는 이벤트 데이터에 대한 정보를 캡슐화하여 관리자에게 알려주고, 임시 기능을 통해 잘못된 기능을 쉽게 다시 활용할 수 있도록 합니다.

jQuery의 이벤트 개체 및 Flujo 제어 개체

Siempre que jQuery ejecuta un manejador, le pasa como 논증 및 개체의 이벤트 프로피오 que Normaliza las diferencias entre navegadores. 개체에 포함된 정보: 이벤트 유형에 대한 정보, 이벤트의 원래 요소가 이벤트.대상에 포함되어 있으며 이벤트.원본 이벤트에 대한 참조가 있습니다.

De manera predeterminada, la mayoría de los eventos del DOM se propagan hacia arriba desde el elemento Original hasta document. 나중에, jQuery comprueba qué manejadores는 등록에 대한 명령과 일치합니다. Este comportamiento hace Posible tanto la delegación como la composición de funcionalidades sobre el mismo suceso.

DOM에 대한 액세스 권한이 없는 경우 이벤트에 대한 전파 방지를 중지하고 event.stopPropagation()을 통해 메시지를 보냅니다.. 물론, 조상이 받은 통지와 연속적인 조치에 대한 요소도 포함되어 있지만, 특정 앱에 대한 일반적인 내용에 대해 설명할 수는 없습니다.

event.stopImmediatePropagation()에 대한 제어가 이제 막 시작되었습니다.. 버블링에 대한 Además de frenar는 버블링에 의해 발생하는 오류로 인해 오류 요소를 등록할 수 없게 됩니다. 귀하는 독감 비판에 따라 내부 기능에 대한 보증을 받기 위해 의료 보험에 가입했습니다.

나중에, event.preventDefault() 이벤트에 의해 결함이 발생한 이벤트를 취소합니다.. 예를 들어, evita que un enlace navegue a otra URL o que un Formulario se envíe. AJAX 환경에 있는 기본 고객의 기술을 확인하고, 제출한 내용을 캡처하고, 애플리케이션 속성에 대한 랜자의 설명을 확인하세요.

jQuery의 고전적인 버전은 manejador의 false desde로 전환되었습니다.. 중지는 stopPropagation()과 함께 PreventDefault()와 같은 호출과 동일하며, 전파 차단을 통해 결함이 있는 취소를 결합할 수 있습니다. 당신은 함께, 편리하게 사용할 수 있는 솔로 공간이 필요합니다.

En el contexto de jQuery, la palabra clave this dentro del manejador apunta al elemento al que se le está entregando el evento en ese momento. 이벤트에 따라, suele ser el nodo en el que se registró el 청취자; 대표자들은 선택기 대표자와 일치하는 요소를 가지고 있지만, 이벤트와 일치하지 않는 경우가 많습니다. 대상은 후손의 심오한 목표를 달성하는 데 성공합니다.

Pasar datos a los manejadores y reutilizarlos

jQuery는 .on() 등록에 대한 임의의 정보를 이벤트에 추가하도록 허용합니다.. 정의되지 않은 null이 아닌 매개변수 데이터의 비율에 따라 jQuery는 이벤트 데이터를 삽입하고 핸들러에 출력할 수 있습니다.

함께 사용하는 물체에 습관적으로 사용하는 것이 좋습니다., por ejemplo { action: "save", tracking: true }, ya que te는 다양한 값을 허용하고 잘못된 매개변수를 입력하여 propiedades에 액세스하도록 허용합니다. Esto hace el código más readible que pasar una simple cadena.

jQuery 4의 이전 버전, un mismo manejador puede ligarse varias veces al mismo elemento의 버전. Cada vínculo puede llevar su propio paquete de event.data, de modo que la misma función actúa de form ligeramente distinta según el contexto con el que se se registró. Es una manera는 우아한 응용 프로그램이며 기본적으로 DRY en la logica de eventos입니다.

통계 데이터, jQuery ofrece otro canal para pasar información dinámica al disparar eventos de forma manual. .trigger() 방법과 .triggerHandler() 방법을 사용하면 두 번째 인수를 통해 간단한 배열을 사용할 수 있습니다. jQuery를 변환하여 유용한 요소로 배열의 요소를 추가 관리하고, 이벤트 개체에 대한 매개변수를 지정합니다.

이벤트 데이터와 .trigger() 인수를 결합하여 이벤트 내부 기반 API를 구성하는 매우 유연한 시스템을 구성합니다.. 이벤트 데이터를 사용하여 청취자 구성 및 프로그램 호출에 따른 데이터 변수에 대한 추가 매개변수를 찾을 수 있습니다.

이벤트 위임: rendimiento y escalabilidad

jQuery를 위임하는 이벤트 시스템의 시스템에 대한 기술이 있는데, DOM 버블링에 대한 지시가 필요합니다.. En lugar de adjuntar un 청취자 a cada elemento potencialmente Interactiveivo, lo registras una sola vez en un contenedor común y dejas que el evento ascienda hasta él.

Este patrón brilla en estructuras grandes o dinámicas. Imagina una tabla con mil celdas: registrar mil handler personales para gestionar un clic en cada una es una sobrecarga notable, tanto por memoria como por por trabajo de comparación al dispararse los eventos. 또한, 솔로 청취자의 경우 테이블 바디와 필터 선택기 기능을 통해 비용을 대폭 절감할 수 있습니다.

La delegación también simplifica la interacción contenido que se genera or modifica via AJAX. Si añades nuevas filas a la tabla después de cargar la página, no necesitas volver a recorrer el DOM para adjuntar manejadores a cada celda recién creada: el Listener delegado seguirá funcionando porque escucha en el ancestro, no en los nodos concretos.

Eso sí, para mantener un rendimiento óptimo conviene seleccionar con cuidado el punto donde se adjunta elevento delegado. 많은 사람들이 Arbol Apeles에 도착했고, Burbujeo와 시장이 jQuery를 사용하여 선택 항목의 숫자를 비교한 것을 확인했습니다. En documentos grandes, usar document o body como delegados universales puede ser costoso para sucesos de alta frecuencia.

선택 항목 종료 시, jQuery 프로세스는 매우 빠른 형식의 간단한 후원자 태그#id.class를 처리합니다.. #myForm과 같은 표현은 효율성 측면에서 평가하기 위한 외부 버튼입니다. En cambio, selectores jerárquicos complejos - por ejemplo, Combinaciones profundas deDescendientes - pueden ser varias veces más lentos, aunque en la mayoría de applicaciones siguen siendo Perfectamente utiliseds.

Hay que tener en quenta también que no todos los eventos son aptos para delegacion. Algunos, como load, scroll o error en imágenes, no burbujean en los navegadores, y por tanto solo funcionan si los adjuntas directamente al elemento orgen. jQuery는 포커스와 흐림에 대한 대체 대안으로 포커스 아웃 이벤트를 소개합니다. 예를 들어, IE 안티구스의 공식 이벤트를 통해 역사적 제한 사항을 위임하세요.

jQuery 4의 이벤트 렌더링

En la mayoría de casos, eventos como click ochange ocurren con poca frecuencia, de modo que el rendimiento no suele ser un Problema. 금수 조치, 존재하는 루이도소스(마우스 이동, 스크롤, 크기 조정)가 두 번째로 여러 문서에 대해 서로 다른 것으로 나타났습니다. 하지만 실제로는 사용자가 원하는 대로 작업할 수 없습니다.

La Primera regla para estos eventos de alta frecuencia es minimizar el trabajo del callback. 사전 계산 및 캐시 저장 기능을 사용하여 DOM 작업을 제한하고 필요한 경우 제한 기술 소개 또는 디바운싱 설정 시간 제한, 요청 애니메이션 프레임 또는 보조 라이브러리를 제어하고 스크롤 기능을 제어할 수 있습니다. CSS 오버플로우 속성.

세군도는 감시자의 숫자에 따라 관리 대표단의 등록 기록을 문서로 확인합니다.. 이벤트에 따라 jQuery를 사용하면 청취자의 잠재력을 회복할 수 있으며, 목표의 상승 단계를 기록하고 관련 선택 항목을 선택할 수 있습니다. Exceso de handlers genéricos anclados en document puede Convertirse en un cuello de botella.

La solución pasa por anclar la delegacion lo más cerca possible de los elementos objetivo. Si sabes que solo te interesan eventos en un formario concreto, es mejor delegar en ese formario que en body. 이 단계에서는 요소 수를 측정하여 비용을 절감하고 평가 비용을 절감할 수 있습니다.

jQuery 4는 속도 선택을 위한 파일 전송을 위임하는 데 사용됩니다.. 특히 주목할 만한 내용을 포함하여 심오한 표현을 효율적으로 표현하기 위해 버튼을 선택기로 선택하는 방법도 있습니다. 청취자에게 콜로카를 다시 심는 데 필요한 메뉴는 매우 간단하며 선택기가 필요합니다.

이벤트, 특히 중요한 사항과의 호환성

jQuery의 이벤트 시스템은 내부 메타데이터와 DOM 요소 손실에 대한 포드에 포함되어 있습니다.. 이 목록은 등록 세부 사항에 대한 추가 정보를 허용하며 카드 노드, 제스처 네임스페이스, 정확한 형식의 .off() 등을 포함합니다. 금지, 요소 —como 개체, 포함 및 애플릿— jQuery에 필요한 추가 데이터 형식을 허용하지 않습니다. librería no puede enlazar eventos en ellos.

특정 상황에 대한 특정 정보가 존재합니다.. 할 일, 로드, 스크롤 및 오류가 발생하여 이미지가 없습니다., así que no podrás delegarlos; ko Internet Explorer 8 이전 버전에서는 재설정이 필요하지 않습니다. jQuery는 호환 가능한 대안을 의도하고 있으며, 현재 진행 중인 이벤트 모델을 제한하고 있습니다.

Un caso conocido es window.onerror, cuyo contrato de 논쟁과 용기 de retorno es diferente al de los eventos estándar. jQuery를 사용하면 시스템에 대한 이동 경로를 추상화하지 않고 지시 사항을 지정하고 window.onerror를 설정하여 전 세계 오류를 캡처할 것을 권장하지 않습니다.

Otro matiz importante es que la lista de manejadores que se usarán para un elemento se fija en el momento en que el evento comienza a procesarse. 리스너가 아닌 .off() 콜백 라마에 대해 설명하면 실제 실행 프로그램에 영향을 주지 않고 처리기의 손실도 발생하지 않습니다. 나중에 호출할 때 효과가 제거됩니다. 콜백을 복구하려면 잘못된 요소와 이벤트가 실제로 발생하는 경우 stopImmediatePropagation()이 필요합니다.

API 종료 시 jQuery는 atajos poco claros와 pseudo-evento "hover" 사용을 위한 alias de mouseenter 및 mouseleave를 지원합니다.. 이전 버전에서는 "hover"라는 유틸리티를 사용하여 이름을 알 수 없지만 .hover() 방법으로 혼란을 일으킬 수 있습니다. jQuery 4에서는 mouseenter와 mouseleave 또는 .hover()를 사용하여 모든 기능에 대한 설명을 사용할 수 있습니다.

이벤트에 따른 jQuery 4의 실제 구현

jQuery 4 marca un punto de inflexión porque Reduce su dependencyencia de comportamientos heredados de navegadores antiguos. 새로운 이벤트에서는 모델이 실제로 DOM에 적용되는 제한사항과 친숙한 것으로 간주됩니다.

Uno de los cambios más sutiles tiene que ver con el orden y el manejo de enfoque, como focus, blur, focusin y focusout. 역사적으로, jQuery 응용 프로그램은 로그 결과에 따라 정규화되었으며 구현 특성에 대한 탐색을 포함하여 일관성을 유지했습니다. 버전 4의 라이브러리는 W3C 표준과 동일하며, 다른 형식에 따라 특정 버전에 따라 달라집니다.

Otro 양상 clave es el recorte de soporte para navegadores Legacy. Internet Explorer 10의 jQuery 4, Edge Legacy 및 모바일이 최신 버전에 집중되어 있습니다. IE11은 휴대전화와 함께 휴대전화에 연결되어 있어 거래에 대한 지원을 받을 수 있습니다. 플랫폼에서 해결 방법이 필요한 경우, 이벤트의 핵심 내용과 지시 사항을 확인해야 합니다.

Esta limpieza va acompañada de una modernización interna del código. 라이브러리는 JavaScript 실제 후원자와 웹팩 롤업에 대한 통합 도구를 포함하고 있습니다. 라마와 .on() 또는 .off()에 대한 지침이 없으므로 jQuery와 엔터노스 모듈 및 현대 번들러를 결과적으로 얻을 수 있습니다.

슬림한 빌드를 위한 jQuery 4 기록. 지연된 콜백을 제거하고 JavaScript의 기본 약속을 사용하면 실제 환경 친화적인 환경을 찾을 수 있습니다. Aunque isto afecta sobre todo a la parte de asincronía y AJAX, todo a la parte de asincronía y AJAX, to do in a la parte de asincronía y AJAX, to do in a la parte de aincronía y AJAX, codigo histórico que interactionuaban con eventos de forma indirecta.

Este alineamiento con los estándares también refuerza la previsibilidad del system de eventos. 더 이상 사용되지 않는 항목에 대한 호환 기능이 없는 관리자에 따르면 jQuery 4는 W3C에 대한 의미 정의가 정의되어 있으며 이벤트 발생 시 전파 및 방출 명령 조합에 대해 jQuery를 사용하여 기본 API를 사용할 수 있습니다. 모더나스.

Seguridad, Trusted Types 및 이벤트 컨텍스트

jQuery 4의 뛰어난 성능을 확인하려면 콘텐츠 보안 정책(CSP) 및 신뢰할 수 있는 유형과 관련된 특수 기능을 살펴보세요.. 이벤트에 대한 지시가 없는 경우, DOM과 상호 작용하는 형식에 따라 표면 데이터에 영향을 미치게 됩니다.

신뢰할 수 있는 유형은 XSS(교차 사이트 스크립팅)의 특정 기술에 대한 기술입니다. 특정 문서에 대한 정보를 제공해야 합니다(예를 들어, innerHTML 지정). jQuery 4는 강력한 메커니즘을 통합하여 CSP 정책 정책에 맞게 통합할 수 있습니다.

Trusted Types 및 CSP와 관련된 선형 작업 수행, jQuery는 간단한 이벤트 관리 방법으로 상황을 줄입니다.. 유효한 데이터가 필요하지 않은 경우, 사전에 도서관에 있는 서류를 먼저 확인해야 합니다.

프런트엔드에 대한 전망이 있는 경우, jQuery를 사용하여 응용 프로그램이 지속되는 동안 많은 고객의 클래식 기반을 의미한다는 의미입니다., siempre que realices a la 버전 4 y는 API 사용 중단에 따라 부분적으로 적용됩니다. 이벤트가 발생하면 .on()을 활용하여 트레이드를 진행하고, 프로그램을 위임하고 최신 보호 기능을 사용하세요.

jQuery 4는 이벤트 관리를 위한 JavaScript 기본 기능을 제공합니다.

현재 탐색 중인 API —querySelector, addEventListener, fetch, classList — jQuery에 대한 내용은 다음과 같습니다.. 기술적으로, 시장의 일부인 복제 프로그램은 도서관의 이벤트 시스템에 따라 단독으로 JavaScript를 사용할 수 있으며, 새로운 버전의 프로젝트에서는 사용할 수 있는 옵션이 있습니다.

죄 금지, 많은 코드 코드 jQuery에 대한 응용 프로그램 존재, la historia es distinta. .on()에 의존하는 이벤트 시스템, 위임자, 플러그인 및 특정 유틸리티를 사용하여 마이그레이션할 수 있습니다. jQuery 4는 현대화의 가능성을 높이기 위해 상호 작용 모델을 다시 설명합니다.

그린필드 프로젝트 또는 최신 프레임워크, jQuery 솔로 이벤트 실행 시 필요한 작업 수행. 이벤트 위임 매뉴얼과 이벤트 위임 매뉴얼을 결합한 addEventListener 조합은 이벤트 위임 매뉴얼과 함께 모든 작업을 제어할 수 있는 방법을 제공합니다.

실용적인 결정은 jQuery의 실행에 도움이 되며 통합에 대한 심오한 결정을 내리게 됩니다. —예를 들어, CMS는 WordPress에서 엄청난 규모의 응용 프로그램을 제공하며 — 기본적으로 새로운 코드를 작성하고 프레임워크에 의존하지 않습니다. 이 시나리오를 혼합하면 jQuery 4가 웹 사이트의 생태 시스템에 표시됩니다.

코드 마드라스의 작업 기반을 중지하고 jQuery 4의 반전 사용을 위한 이벤트 시스템을 이해하세요.: 귀하는 최대 규모의 파티를 허용하고 귀하의 문서를 확인하고, 일정을 확인하고, 마이그레이션 진행을 계획할 수 있으며, API 기본 솔루션을 즉석에서 해결합니다.

실제로, jQuery 4는 호환되는 이벤트 시스템을 통합하고, 손실된 기능에 대한 연결을 명확하게 합니다.. .on()을 통해 위임을 받은 경우, 정확한 전파 제어 및 보안 설정이 완료되고, jQuery를 통해 실제 프런트엔드 컨텍스트에서 기본 인터페이스를 제어할 수 있습니다.

관련 게시물: