可以在javascript中使用类似css的媒体查询吗?
我想知道是否有一种方法可以像在CSS中一样在javascript中使用媒体查询? 我想处理设备宽度或方向并启动一个函数 现在我使用的代码是:可以在javascript中使用类似css的媒体查询吗?,javascript,media-queries,Javascript,Media Queries,我想知道是否有一种方法可以像在CSS中一样在javascript中使用媒体查询? 我想处理设备宽度或方向并启动一个函数 现在我使用的代码是: window.onresize = function(event) { /* test for various sizes */ }; 但这对我没有好处,我不知道如何让它工作 我需要它在没有第三奇偶校验库的最新chrome中工作,我不确定这是否可行。我建议使用window.matchMedia方法,它允许您测试特定的媒体查询,并在匹配与否时添加事
window.onresize = function(event) {
/* test for various sizes */
};
但这对我没有好处,我不知道如何让它工作
我需要它在没有第三奇偶校验库的最新chrome中工作,我不确定这是否可行。我建议使用
window.matchMedia
方法,它允许您测试特定的媒体查询,并在匹配与否时添加事件侦听器
例如:
var mq = window.matchMedia("(max-width: 600px)");
mq.addListener(function(event){
if (event.matches) {
console.log("Small Screen mode !");
}
});
例2:
onOrientationChange = function(event){
if (event.matches) {
console.log("Portrait mode!");
}
};
var mq = window.matchMedia("(orientation: portrait)");
mq.addListener(onOrientationChange);
/* ... /*
/* When you no longer need to receive notifications , you can remove the listener */
mq.removeListener(onOrientationChange);
Chrome9+、Firefox6+和IE10支持此API+
有关签出的附加信息。听起来它可以满足您的需求。尝试使用matchMedia(jQuery)
库有什么问题吗?我们不允许在当前项目中使用第三奇偶校验库。它需要很轻,谢谢。。这正是我想要的。
// media query event handler
if (matchMedia) {
var mq = window.matchMedia("(min-width: 500px)");
mq.addListener(WidthChange);
WidthChange(mq);
}
// media query change
function WidthChange(mq) {
if (mq.matches) {
// window width is at least 500px
}
else {
// window width is less than 500px
}
}