Eventos de mouse y eventos de teclado

Tres elementos de activación de eventos: ¿por quién? ¿Por qué disparador? ¿Qué se debe hacer después del disparador?

Cómo escribir el evento:

   estándar w3c: el evento se escribe en la línea, pero debido a que la estructura y el comportamiento deben estar separados, generalmente usamos JavaScript para vincular el evento. Solo en casos excepcionales se escribirá el evento en la línea.

Método de enlace de eventos:

El nodo (objeto) en browser.on + event handle = function () {

     Que hacer (Colocado en el navegador, no ejecutado, y ejecutado cuando ocurre el evento).

}

例 : oDiv.onclick = function () {alert (1)}

 

Resumen del evento:

El evento es definir una función de preprocesamiento para el navegador. Cuando se activa el evento, se ejecuta la función. Este es el evento.

Tipo de evento:

Escriba siempre que escriba eventos

Eventos del mouse:

1. Haga clic en evento

   oDiv.onclick = función))

2. Haga doble clic en evento

   oDiv.ondbclick = función))

3. Evento del botón derecho del mouse (menú contextual)

   oDiv.oncontextmenu = función () {

// contexto contexto  

// menu menu}

   4. Evento de mouse down

   oDiv.onmousedowm = función () {

console.log ('prensa')}

   5. Evento del mouse up

      oDiv.onmouseup = función () {

console.log ('ascensor')}

   6.1 Ratón en

      oDiv.onmouseover = función () {

console.log ('Pasar el mouse')}

6.2 El mouse se movió hacia adentro, pero no se disparará cuando cruce el elemento secundario

   oDiv.onmouseenter = función)) {

console.log ('Ratón para entrar')}

7.1 Ratón fuera

   oDiv.onmouseout = función)) {

console.log ('Mouse out')}

7.2 El mouse se mueve hacia afuera, pero no se disparará cuando cruce el elemento hijo

   oDiv.onmouseleave = función)) {

console.log ('Salir del permiso')}

8. Evento de movimiento del mouse

      oDiv.onmousemove = función () {

console.log ('mobile')}

 Eventos de teclado:

var oInput = document.querySelector ( 'input')

1. Presione el teclado

oInput.onKeydown = function () {

console.log ('prensa')}

   2. El teclado está elevado

oInput.onKeyup = function () {

console.log ('ascensor')}

   3. Tocando el teclado

oInput.onKeypress = function () {

console.log ('golpe de teclado')}

Este evento de presión se activará incluso si el teclado se mantiene presionado sin levantar

Eventos de forma:

En selección única, selección múltiple, el menú desplegable para enlazar estos elementos generalmente usa cambio

Ejemplo:

 

Obtener evento de enfoque: enfoque

       oText.onfocus = function () {console.log ('get the focus')}

Evento de foco perdido: onblur

      oText.onblur = function () {console.log ('foco perdido')

      // Obtenga el contenido del cuadro de texto utilizando el atributo de valor

      console.log (this.value)}

 Evento de envío de formulario: escriba en toda la capa externa del formulario

         : : Varo Form = document.querySelector ('# form')

            oForm.onsubmit = function () {

              // Realice algún procesamiento antes de enviar el formulario

              // Por ejemplo, si el cuadro de texto no tiene contenido, no se enviará

              if (oText.value === '') {

            // No permitir el envío del formulario, devolver falso puede evitar

              falso retorno}

            console.log ('Enviar')}

evento evento

    Cuando se activa el evento, recibirá un mensaje (objeto de evento), que contiene la encapsulación de algunas propiedades y métodos relacionados con el evento (como: el elemento del evento, el estado de la tecla del teclado, la posición del mouse, el estado del botón del mouse, etc.) , Solo cuando se desencadena el evento.

  oDiv.onmousedown = función (e) {

               alerta (e);}

JS falta de ley de la virtud: hay un problema de compatibilidad de objetos de evento;

Entonces, hagámoslo compatible antes de usar el objeto de evento:

  Si e es válido, entonces es e, no válido es igual a window.event

  e = e || window.event;

  alert (e.buttons) observa el valor de retorno de .buttons;

  Eventos y métodos del mouse;

Nombre del atributo

Significado

e.botones

Vuelva al botón de clic del mouse (1 botón izquierdo, 2 botón derecho, 4 rueda de desplazamiento del botón central)

e.offsetX / offsetY

Obtenga las coordenadas del cuadro (origen del evento) que activó el evento

Las coordenadas del borde del elemento con el clic más pequeño.

e.clientX / clientY

Obtenga las coordenadas del área visible (de acuerdo con el posicionamiento del navegador)

Independientemente de la ubicación, se fija al borde del área de visualización del navegador

e.screenX / screenY

Obtenga las coordenadas de toda la pantalla

No importa cuán grande sea el navegador, obtiene las coordenadas de todo el borde de la pantalla

e.pageX / e.pageY

Obtener coordenadas del documento (incluida la barra de desplazamiento)

Obtener el código de la tecla del teclado

Cada tecla del teclado tiene un código único para identificar qué tecla del teclado está operando actualmente el usuario

 

  Tiene problemas de compatibilidad

  e.keyCode || e.que

  Código de tecla especial: si presionar alt ctrl y shift

  e.altKey

  e.ctrlKey

  e.shiftKey

  El valor de retorno es un valor booleano;

Se puede usar para juzgar combinaciones de teclas

  if (e.keyCode == 13 && e.altKey) {

       alerta ('Enter y alt fueron presionados al mismo tiempo))}

Comportamiento predeterminado (navegador)

Hay algunos comportamientos predeterminados de los elementos html, como una etiqueta, hay una acción de salto después de hacer clic; la entrada del tipo de envío en el formulario del formulario tiene un evento de salto de envío predeterminado; la entrada del tipo de reinicio tiene el comportamiento del formulario de reinicio. Sin embargo, a veces no necesitamos el evento predeterminado, por lo que debemos evitar el evento predeterminado

falso retorno;

Redacción compatible para evitar el comportamiento predeterminado, solo los eventos con comportamiento predeterminado deben escribir esto

En diferentes incidentes, se bloquean diferentes acciones, a saber:

if (e.preventDefault) {

   e.preventDefault ();

} más {

    window.event.returnValue = false;    

    //falso retorno;}

Centrarse en los errores:

No se puede leer la lista de clases de indefinido

TypeError no capturado: no se puede leer la propiedad 'classList' de undefined

Supongo que te gusta

Origin www.cnblogs.com/52580587zl/p/12723125.html
Recomendado
Clasificación