"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Modal de diálogo Popver API VS: igual igual pero diferente

Modal de diálogo Popver API VS: igual igual pero diferente

Publicado el 2024-11-07
Navegar:778

Popver API VS dialog Modal : Same Same but Different

Estaba leyendo algunos blogs de noticias tecnológicas y me topé con el título Popover API aterriza en Baseline. Estaba confundido, durante mi reciente inmersión en el desarrollo front-end, recientemente me costó mucho acostumbrarme a usar Elementos en HTML. Mientras revisaba el blog, estaba constantemente confundido sobre cómo estaba usando el elemento hasta ahora.

TL;DR

Elija para:

  • Ventanas emergentes modales que requieren atención del usuario
  • Accesibilidad e interacción con el teclado

Elija ventana emergente para:

  • Ventanas emergentes no modales con despido ligero
  • Fácil implementación con código mínimo

elemento

Según el MDN El elemento Diálogo

El elemento HTML representa un cuadro de diálogo modal o no modal u otro componente interactivo, como una alerta, un inspector o una subventana descartables.

A generalmente se utiliza y se muestra sobre el contenido cuando el sitio web necesita llamar la atención del usuario sobre algo importante. es decir, suscribirse a un boletín informativo, solicitar (más bien obligar) a desactivar el bloqueador de anuncios o aceptar términos y condiciones.

elemento como modal

Como te habrás encontrado varias veces en varios sitios web, algunas de estas ventanas emergentes se dibujarán en toda la pantalla mientras se difumina el fondo o se desactiva el fondo y se enfoca al usuario solo en la tarea en cuestión; el usuario debe descartar (solo si está permitido) la ventana emergente o ingrese la información requerida para que desaparezca. Este comportamiento se denomina "elemento como modal". Estos elementos modales se muestran en la capa superior de la página.

//To open dialog as a modal.

dialog.showModal();

// To close the dialog.

dialog.close();
El elemento

cuando se muestra usando el método showModal() se puede descartar usando la tecla esc. Los usuarios del teclado esperan este comportamiento, que debe mantenerse y que proporciona el navegador. Si hay varios cuadros de diálogo modales abiertos, solo se cerrará el último cuadro de diálogo usando la tecla esc.

elemento como no modal

Es posible que no siempre desees detener el flujo natural de uso de tu página web por parte del usuario, dejar de hacer todo lo demás y concentrarte en lo que deseas mostrar pero aún así en tu contenido, como una notificación de brindis, un consentimiento de cookies o información sobre herramientas general. información. debe aparecer en la capa superior de la página, encima de cualquier otro contenido con el que el usuario pueda o no interactuar. Este tipo de ventanas emergentes se denominan ventanas emergentes no modales. Los usuarios pueden descartarlos manualmente o en general y desaparecerán por sí solos. Estos cuadros de diálogo no modales todavía se muestran en la capa superior de la página, pero su prioridad se puede controlar usando el índice z y el elemento modal tomará un índice z más alto que este y hará que no sea accesible.

//To open dialog as a modal.

dialog.show();

// To close the dialog.

dialog.close();

Ejemplo de código

Algunas cuestiones

Me costó entender el funcionamiento y el uso de elementos no modales. En mi opinión, el elemento no modal se comportó de manera inconsistente y necesitaba código Javascript para manejar situaciones como:

  • No hay ninguna función de despido ligero. Al hacer clic fuera del modelo no se cerrará el .
  • La tecla esc no descarta y necesita Javascript para manejar ese escenario.
  • es necesario administrar el índice z manualmente si desea dibujar la capa superior.

Para mi sorpresa, la API emergente respondió o solucionó estos problemas y más....

API emergente

popover son atributos que se pueden agregar a cualquier atributo HTML. Aquí tienes un ejemplo.


Popover content

Diferencia principal entre elemento popover y

La principal diferencia entre los elementos popover y

es que el popover siempre es no modal. El elemento viene con un atributo role=dialog. Este atributo de rol se adjunta a varios elementos HTML y se comporta de cierta manera. es decir, h1 tiene una función de encabezado y tiene una función de ancla/enlace. Esta función se utiliza para determinar y ayudar a las tecnologías de asistencia, como los lectores de pantalla, a determinar los elementos. Sin embargo, el popover es un atributo de un elemento HTML ya que no tiene una función predeterminada asociada. Esto ayuda a que el
en el ejemplo anterior se oculte hasta que se haga clic en el botón.

El atributo popover se puede usar con un código mínimo y, si bien se puede controlar usando Javascript, no es necesario en todo momento como el

.

popover puede tener 2 características:
1.popover=auto: tiene funcionalidad para el despido ligero y no requiere interacción JS.
2.popover=manual: Necesita interacción con Javascript, como hacer clic en un botón o temporizador para cerrarlo explícitamente.

la ventana emergente siempre se muestra en la capa superior, no es necesario establecer el índice z explícitamente.

Ejemplo de código:

Puedes ver que puedo lograr el mismo comportamiento casi sin código Javascript. Diseñar y administrar varios popovers es mucho más fácil.

Algunas consideraciones de diseño

el popover puede tener: fondo configurado usando CSS que se puede usar para desenfocar o atenuar el fondo del popover, pero eso no elimina la funcionalidad de eliminación de luz del mismo, y aún así el usuario puede hacer clic afuera si el popover crear e interactuar con otros elementos de su página web. Debe tener mucho cuidado al determinar cuándo elegir popover en lugar de .

Lo principal a considerar aquí es: ¿el componente que se muestra es el único que debería tener foco en este momento? ¿Se puede permitir al usuario interactuar con algo más?

Conclusión

En conclusión, el elemento y la API popover ofrecen opciones versátiles para crear ventanas emergentes interactivas en sus aplicaciones web. Al comprender sus distintas características y casos de uso, puede tomar decisiones informadas para mejorar la experiencia del usuario y agilizar su proceso de desarrollo.

Referencias

  1. Comparando la API de Popover y el elemento
  2. Los cuadros de diálogo y las ventanas emergentes parecen similares. ¿En qué se diferencian?
  3. La API emergente llega a Baseline

Declaración de liberación Este artículo se reproduce en: https://dev.to/decoders_lord/popver-api-vs-dialog-modal-same-same-but- Different-2ig7?1 Si hay alguna infracción, comuníquese con [email protected] para borrarlo
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3