window.matchMedia не работает в Safari - PullRequest
0 голосов
/ 26 мая 2020

Почему следующий код не работает в Safari?

window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => {
 console.log('theme changed');
});

1 Ответ

0 голосов
/ 26 мая 2020

Как отмечено здесь, на caniuse.com и здесь, на mozilla.org , MediaQueryList.addEventListener не работает в Safari и IE, однако вы можете использовать MediaQueryList.addListener :

Старые браузеры должны использовать addListener вместо addEventListener, поскольку MediaQueryList наследуется от EventTarget только в новых браузерах. [ источник ]

...