On to Changes to handling of @-moz-keyframes
As of the Friday, April 22 build on the Nightly channel, Firefox builds
now have support for window.matchMedia()
. This is
basically the media
queries equivalent to querySelector
,
matchesSelector
, and friends. It is implemented as
described in the current cssom-view draft: see the sections on
window.matchMedia()
and on
the MediaQueryList
interface (but beware the draft
could change from its state as of today).
The window.matchMedia()
method takes a media query as a
string argument and returns a MediaQueryList
object. The
simplest way to use this object is just to look at its
matches
property, for example:
if (window.matchMedia("(min-width: 400px)").matches) { // The screen width is 400px or wider. } else { // The screen width is less than 400px. }
However, the object also allows you to add listeners that get notified when the state changes, so you can do:
function setup_for_width(mql) { if (mql.matches) { // The screen width is 400px or wider. Set up or change things // appropriately. } else { // The screen width is less than 400px. Set up or change things // appropriately. } } var width_mql = window.matchMedia("(min-width: 400px)"); // Add a listener for when the result changes width_mql.addListener(setup_for_width); // And share the same code to set things up with our current state. setup_for_width(width_mql);
There are a few other things you can do (like remove listeners). For now, see the spec for details, though I would not be at all surprised if sheppy writes something better very soon.
If you notice any problems, file bugs in product Core, component Style System.
Back to CSS Animations