The addListener()
method of the MediaQueryList
interface adds a listener to the MediaQueryListener
that will run a custom callback function in response to the media query status changing.
This is basically an alias for EventTarget.addEventListener()
, for backwards compatibility purposes. Older browsers should use addListener
instead of addEventListener
since MediaQueryList only inherits from EventTarget in newer browsers.
Syntax
MediaQueryList.addListener(func)
Parameters
- func
- A function or function reference representing the callback function you want to run when the media query status changes. In the original implementation, the callback was a non-standard
MediaQueryListListener
object. In the new implementation the standard event mechanism is used, the callback is a standard function, and the event object is aMediaQueryListEvent
, which inherits fromEvent
.
Return value
Void.
Examples
var para = document.querySelector('p'); var mql = window.matchMedia('(max-width: 600px)'); function screenTest(e) { if (e.matches) { /* the viewport is 600 pixels wide or less */ para.textContent = 'This is a narrow screen — less than 600px wide.'; document.body.style.backgroundColor = 'red'; } else { /* the viewport is more than than 600 pixels wide */ para.textContent = 'This is a wide screen — more than 600px wide.'; document.body.style.backgroundColor = 'blue'; } } mql.addListener(screenTest);
Specifications
Specification | Status | Comment |
---|---|---|
CSS Object Model (CSSOM) View Module The definition of 'addListener' in that specification. |
Working Draft | Initial definition |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
addListener() | Chrome Full support 9 | Edge Full support 12 | Firefox Full support 6 | IE Full support 10 | Opera Full support 12.1 | Safari
Full support
5.1
| WebView Android Full support Yes | Chrome Android Full support 18 | Firefox Android Full support Yes | Opera Android Full support Yes | Safari iOS
Full support
5
| Samsung Internet Android Full support 1.0 |
Legend
- Full support
- Full support
- See implementation notes.
- See implementation notes.