Evento de cierre modal en Twitter Bootstrap | Serie 1
Conocimiento previo: Bootstrap 4 | Modal
Bootstrap Modals ofrece una ventana emergente de JavaScript liviana y multipropósito que es personalizable y receptiva. Se pueden usar para mostrar ventanas emergentes de alerta, videos e imágenes en un sitio web. Bootstrap Modals se divide en tres secciones principales: encabezado, cuerpo y pie de página.
Los eventos Bootstrap son: show.bs.modal , shows.bs.modal , hide.bs.modal , hidden.bs.modal etc. De todos estos eventos, estamos interesados en hide.bs.modal y hidden.bs eventos .modales .
- hide.bs.modal : este evento se activa inmediatamente cuando se llama al método de instancia hide.
- hidden.bs.modal : este evento se activa cuando el modal ha terminado de ocultarse para el usuario y luego esperará a que se completen las transiciones de CSS.
Ejemplo:
HTML
<!DOCTYPE html> <html lang="en"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <!-- link to Bootstrap CSS CDN --> <link rel="stylesheet" href= "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity= "sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous"> <title> Modal closing event in Bootstrap </title> <style> h1, h6 { margin: 2%; } .btn { margin-left: 2%; } </style> </head> <body> <center> <h1 style="color:green;"> GeeksforGeeks </h1> <!-- Button trigger modal --> <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#gfgModal"> Launch Modal </button> <!-- Modal --> <div class="modal fade" id="gfgModal" tabindex="-1" role="dialog" aria-labelledby="gfgModalLabel" aria-hidden="true"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <h6 class="modal-title" id="gfgModalLabel" style="color:green;"> GeeksforGeeks </h6> <!-- The title of the modal --> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <!-- The content inside the modal box --> <p> Articles that need little modification/ improvement from reviewers are published first. To quickly get your articles reviewed, please refer existing articles, their formating style, coding style, and try to make your close to them. </p> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> <!-- The close button in the bottom of the modal --> <button type="button" class="btn btn-primary"> okay </button> <!-- The save changes button in the bottom of the modal --> </div> </div> </div> </div> <!-- Optional JavaScript --> <!-- jQuery first, then Popper.js, then Bootstrap JS --> <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity= "sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"> </script> <script src= "https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity= "sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"> </script> <script src= "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity= "sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"> </script> </center> <!-- Modal JQUERY logic --> <script type="text/javascript"> $('#gfgModal').on('hidden.bs.modal', function (e) { // Fire a function in the console console.log('Function executed when gfgModal closed'); // Alert the user alert('Alert fired when gfgModal closed') }) </script> </body> </html>
Producción:
Antes de hacer clic en el botón:
Después de hacer clic en el botón:
Al cerrar modal, observe la consola:
Entonces, cuando modal está cerrado , lo manejamos con éxito usando
- Dispara una salida en la consola
- Alertar al usuario
Publicación traducida automáticamente
Artículo escrito por greenindia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA