El método undelegate() es un método incorporado en jQuery que se utiliza para eliminar el controlador de eventos especificado del elemento seleccionado.
Sintaxis:
$(selector).undelegate(selector, event, function)
Parámetros: este método acepta tres parámetros, como se mencionó anteriormente y se describe a continuación:
- selector: es un parámetro opcional que se utiliza para especificar el selector del que se eliminará el evento.
- evento: Es un parámetro opcional que se utiliza para especificar el nombre del tipo de evento en el selector.
- función: es un parámetro opcional que se usa para especificar el nombre de la función del controlador que se eliminará.
Valor devuelto: este método devuelve el elemento seleccionado con los cambios especificados realizados por el método undelegate().
Los siguientes ejemplos ilustran el método undelegate() en jQuery:
Ejemplo 1: Este ejemplo no contiene ningún parámetro.
<!DOCTYPE html> <html> <head> <title>The undelegate Method</title> <script src= "https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"> </script> <!-- jQuery code to show the working of this method --> <script> $(document).ready(function() { $("body").delegate("p", "click", function() { $(this).css("font-size", "25px"); }); $("button").click(function() { $("body").undelegate(); }); }); </script> <style> div { width: 300px; height: 100px; background-color: lightgreen; padding: 20px; font-weight: bold; font-size: 20px; border: 2px solid green; } button { margin-top: 10px; } </style> </head> <body> <div> <!-- click on this p element --> <p>Welcome to GeeksforGeeks!.</p> </div> <!-- click on this button to remove the event handler --> <button>Remove...!</button> </body> </html>
Salida:
Antes de hacer clic en cualquier lugar:
Después de hacer clic en el párrafo:
Nota: Primero haga clic en el botón y luego haga clic en el párrafo, luego no se producirán cambios.
Ejemplo 2: Este ejemplo contiene todos los parámetros.
<!DOCTYPE html> <html> <head> <title>The undelegate Method</title> <script src= "https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"> </script> <!-- jQuery code to show the working of this method --> <script> $(document).ready(function() { $("body").delegate("div", "click", function() { $(this).animate({ height: "+=100px" }); $(this).animate({ width: "+=100px" }); }); $("button").click(function() { $("body").undelegate("div", "click"); }); }); </script> <style> div { width: 30px; height: 30px; background-color: green; } button { margin-top: 10px; } </style> </head> <body> <div></div> <!-- click on this button --> <button>Click here..!</button> </body> </html>
Salida:
antes de hacer clic en cualquier lugar:
después de hacer clic en el elemento div, cambie el tamaño.
Nota: si hace clic en el botón y luego en el elemento div, no se producirá ningún cambio en el tamaño.
Publicación traducida automáticamente
Artículo escrito por kundankumarjha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA