CSS的mediaQuery媒体特性,媒体查询
@media all and (min-width: 600px) {
body { background: #FF0; }
}
var result = window.matchMedia('(min-width: 600px)');
window.matchMedia方法接受一个mediaQuery语句的字符串作为参数,返回一个[MediaQueryList]对象。该对象有以下两个属性。media:返回所查询的mediaQuery语句字符串。matches:返回一个布尔值,表示当前环境是否匹配查询语句。
var result = window.matchMedia('(min-width: 600px)');
result.matches: true
result.media: "(min-width: 600px)"
result.onchange: null
- 根据mediaQuery返回的结果是否匹配当前环境,执行不同的代码
if (result.matches) {
…… ……
} else {
…… ……
}
- 如果
window.matchMedia无法解析mediaQuery参数,返回的总是false,而不是报错
var result = window.matchMedia('(min-width: 6000px)');
result.matches: false
…… ……
- window.matchMedia方法返回的[
MediaQueryList]对象有两个方法,用来监听事件:addListener方法和removeListener方法
指定回调函数 result.addListener(mqCallback);
撤销回调函数 result.removeListener(mqCallback);
function mqCallback(mql) {
if (mql.matches) {
} else { }
}
结语
前端react QQ群:
788023830----React/Redux - 地下老英雄前端交流 QQ群:
249620372----FRONT-END-JS前端(我们的宗旨是,为了加班,为了秃顶……,仰望大佬),希望小伙伴们加群一起学习