Qué es HTML Invoker Command Generator?
La API Invoker Commands es una función HTML declarativa que permite a los botones controlar otros elementos sin JavaScript. Usando el atributo commandfor (que apunta al id de un elemento objetivo) y el atributo command (que especifica la acción), un botón puede abrir/cerrar diálogos, alternar popovers, expandir/contraer detalles o disparar eventos de comando personalizados. Esto reemplaza los manejadores onclick con HTML declarativo y accesible.
Respuesta rápida
Use la API Invoker Commands para botones declarativos que controlen diálogos, popovers y detalles sin JavaScript. Establezca commandfor al ID del elemento objetivo y command a la acción (show-modal, toggle-popover, open, close). Los comandos integrados funcionan de forma nativa; los comandos personalizados disparan un evento 'command' en el objetivo.
Last updated: 2026-05-28
Limitaciones
- Invoker Commands solo funciona para tipos de destino específicos: dialog (show-modal, close), popover (show-popover, hide-popover, toggle-popover) y details (open, close, toggle). Otros elementos necesitan manejadores de evento command personalizados.
- El soporte del navegador es Baseline 2025: Chrome 117+, Edge 117+, Safari 18+. Firefox está en desarrollo. Los navegadores más antiguos necesitan un fallback de manejador de clic JavaScript.
- Los comandos personalizados (usando un valor de comando personalizado) disparan un evento 'command' pero no realizan ningún comportamiento integrado. Debe agregar un listener de evento JavaScript en el objetivo para manejar comandos personalizados.
Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub
Cómo usar esta herramienta
- Ingrese el ID del elemento objetivo y seleccione el tipo de destino (dialog, popover, details o custom).
- Elija el comando — diferentes tipos de destino admiten diferentes comandos (show-modal, toggle-popover, open, etc.).
- Establezca el texto del botón. Opcionalmente incluya la plantilla del elemento objetivo y el fallback JS.
- Copie el HTML generado. No se requiere JavaScript para comandos integrados en navegadores compatibles.
Para qué puedes usarla
- Crear un disparador de diálogo modal con un botón que abra el diálogo declarativamente, y un botón de cierre dentro del diálogo que también funcione declarativamente.
- Construir un menú popover con un botón de alternancia — sin manejadores de clic, sin gestión de estado.
- Crear un widget details/divulgación controlado por un botón externo en lugar del elemento summary.