--- title: MediaQueryList slug: Web/API/MediaQueryList tags: - API - CSSOM Vista - CompatibilidadDeNavegadores - Interface - MediaQueryList - Refetencia translation_of: Web/API/MediaQueryList ---
Un objeto MediaQueryList almacena información en un media query aplicada a un documento y se encarga de enviar notificaciones a los oyentes cuando cambia el estado de consulta de medios (es decir, cuando la prueba de consulta de medios comienza o deja de evaluarse a true).
Esto hace posible observar un documento para detectar cuando sus consultas de medios cambian, en lugar de sondear los valores periódicamente y le permite programar cambios en un documento basado en el estado de consulta de medios.
La nueva versión de la interfaz de MediaQueryList hereda las propiedades de su interfaz principal, {{domxref("EventTarget")}}.
true si elfalse si no.MediaListQuery en navegadores antiguos, para propósitos de compatibilidad con versiones anteriores.La nueva versión de la interfaz de MediaQueryList hereda métodos de su interfaz principal, {{domxref("EventTarget")}}.
MediaQueryListener que ejecutará una función de devolución de llamada personalizada en respuesta al cambio de estado de consulta de medios. Esto es básicamente un alias para {{domxref("EventTarget.addEventListener()")}}, para propósitos de compatibilidad con versiones anteriores. MediaQueryListener. Esto es básicamente un alias para {{domxref ("EventTarget.removeEventListener ()")}}, para propósitos de compatibilidad con versiones anteriores.Este ejemplo sencillo crea una MediaQueryList y, a continuación, establece un detector para detectar cuándo cambia el estado de la consulta de medios, ejecutando una función personalizada cuando cambia la apariencia de la página.
var para = document.querySelector('p');
var mql = window.matchMedia('(max-width: 600px)');
function screenTest(e) {
if (e.matches) {
/* el ventana tiene 600 píxeles de ancho o menos*/
para.textContent = 'This is a narrow screen — less than 600px wide.';
document.body.style.backgroundColor = 'red';
} else {
/* la ventana tiene más de 600 píxeles de ancho */
para.textContent = 'This is a wide screen — more than 600px wide.';
document.body.style.backgroundColor = 'blue';
}
}
mql.addListener(screenTest);
Nota: Puedes encontrar este ejemplo en GitHub (ver el codigo fuente, y también verlo en ejecución).
| Especificaciones | Estado | Comentario |
|---|---|---|
| {{SpecName("CSSOM View", "#the-mediaquerylist-interface", "MediaQueryList")}} | {{Spec2("CSSOM View")}} | Initial definition |