【js】El mouse prohíbe el botón derecho para prohibir la apertura de la consola y la prohibición del teclado


prefacio

Hola a todos, hoy compartiré con ustedes que en el front-end js, está prohibido hacer clic con el botón derecho del mouse en el navegador, prohibir que el mouse seleccione y prohibir las teclas del teclado.
Este método es el que usé cuando hice un sistema de evaluación de palabras, porque si abres la consola durante el examen y encuentras la respuesta correcta a través de la consola, entonces no tiene sentido.
Por lo tanto, es necesario deshabilitar la consola y aplicar algunos conocimientos básicos, ¡así que echemos un vistazo juntos!

1. Deshabilitar

1. Deshabilitar el botón derecho del mouse

document.oncontextmenu = new Function("event.returnValue=false");

oncontextmenu es un atributo de evento en JavaScript, que se usa para activar el controlador de eventos correspondiente cuando el usuario hace clic con el botón derecho del mouse. Cuando el usuario hace clic con el botón derecho del mouse, el navegador mostrará un menú contextual.Esta propiedad se puede usar para evitar el comportamiento predeterminado del menú contextual o para personalizar el comportamiento del menú contextual.

2. Deshabilitar la selección del mouse

document.onselectstart = new Function("event.returnValue=false");

onselectstart es un atributo de controlador de eventos que se activa cuando el usuario comienza a seleccionar texto. Se puede usar para evitar que el usuario seleccione texto o para seleccionar texto mientras arrastra un elemento.

3. Desactivar teclado F12

 document.addEventListener("keydown", function (e) {
    
    
 		console.log(e。key);
        if (e.key == "F12") {
    
    
          e.preventDefault(); // 如果按下键F12,阻止事件
        }
    });

Además de la escritura anterior, existen otras formas de escritura.

document.onkeydown = () => {
    
    
  console.log(window.event.keyCode);
  for (let i = 9; i < 47; i++) {
    
    
    if (window.event && window.event.keyCode == i) {
    
    
      return false;
    }
  }
  for (let i = 58; i < 65; i++) {
    
    
    if (window.event && window.event.keyCode == i) {
    
    
      return false;
    }
  }
  for (let i = 91; i < 300; i++) {
    
    
    if (window.event && window.event.keyCode == i) {
    
    
      return false;
    }
  }
  // 禁用ctrl+shift+i
  if (window.event.ctrlKey && window.event.shiftKey && window.event.keyCode == 73) {
    
    
    return false;
  }
  if (window.event.shiftKey) {
    
    
    return false;
  }
  // 禁用ctrl+r
  if (window.event.ctrlKey && window.event.keyCode == 82) {
    
    
    return false;
  }
}

onkeydown es un controlador de eventos en JavaScript que se activa cuando el usuario presiona cualquier tecla del teclado. Puede usar el evento onkeydown con una función de JavaScript para realizar alguna acción cuando el usuario presiona una tecla. Por ejemplo, puede usar el evento onkeydown para capturar al usuario presionando la tecla Intro y enviando el formulario.

Puede deshabilitar los botones según sus propias necesidades. Esta es mi necesidad de proyecto, por lo que agregué para deshabilitar otros botones del teclado. El ctrl + shift + i arriba también puede abrir el navegador.

2. Todos los códigos

// 1.禁用右键菜单
document.oncontextmenu = new Function("event.returnValue=false");
// 2.禁用鼠标选中
document.onselectstart = new Function("event.returnValue=false");

document.onkeydown = () => {
    
    
  console.log(window.event.keyCode);

  for (let i = 9; i < 47; i++) {
    
    
    if (window.event && window.event.keyCode == i) {
    
    
      return false;
    }
  }
  for (let i = 58; i < 65; i++) {
    
    
    if (window.event && window.event.keyCode == i) {
    
    
      return false;
    }
  }
  for (let i = 91; i < 300; i++) {
    
    
    if (window.event && window.event.keyCode == i) {
    
    
      return false;
    }
  }
  // 禁用ctrl+shift+i
  if (window.event.ctrlKey && window.event.shiftKey && window.event.keyCode == 73) {
    
    
    return false;
  }
  if (window.event.shiftKey) {
    
    
    return false;
  }
  // 禁用ctrl+r
  if (window.event.ctrlKey && window.event.keyCode == 82) {
    
    
    return false;
  }
}

Resumir

Finalmente, les digo en secreto que hay otra forma de abrir la consola, que es presionar F12 mientras se actualiza la página del navegador, que también se puede abrir, por lo que también hice algunas operaciones en la actualización en este proyecto.
Puede probar este método para abrir la consola, pero primero debe deshabilitar F12, de lo contrario no sabrá si comete un error.Este método no es particularmente fácil de abrir y debe intentarlo varias veces más.
Lo anterior es todo el contenido de este capítulo, gracias por leer, espero poder ayudarlo.

Supongo que te gusta

Origin blog.csdn.net/SqlloveSyn/article/details/131264001
Recomendado
Clasificación