Jquery 将函数条件匹配到媒体查询
这可能很明显,但我有点困惑 我有一个CSS中的媒体查询,根据窗口大小更改样式:Jquery 将函数条件匹配到媒体查询,jquery,Jquery,这可能很明显,但我有点困惑 我有一个CSS中的媒体查询,根据窗口大小更改样式: @media screen and (max-width:39.9375em) { ... } 我需要编写一个jQuery函数,以便在屏幕大小低于media query中提到的大小时执行。我该怎么做 function matchScreen() { if ($(window).innerWidth() < ???) { ... } } 函数匹配屏幕(){ 如果($(窗口).
@media screen and (max-width:39.9375em) {
...
}
我需要编写一个jQuery函数,以便在屏幕大小低于media query中提到的大小时执行。我该怎么做
function matchScreen() {
if ($(window).innerWidth() < ???) {
...
}
}
函数匹配屏幕(){
如果($(窗口).innerWidth()<??){
...
}
}
您可以使用窗口
调整大小
事件,并在处理程序中,使用检查您是否有与该媒体查询匹配的内容
例如,沿着这些路线:
$(window).on("resize", function() {
if (window.matchMedia("(max-width:39.9375em)").matches) {
// It's a match
} else {
// It's not a match
}
});
您还可以使用来自matchMedia
的事件回调:
window.matchMedia("(max-width:39.9375em)").addListener(function(e) {
if (e.matches) {
// It's a match
} else {
// It's not a match
}
});
…我怀疑(但不知道)这更有效
无论哪种方式,如果您在分支中所做的操作导致大小调整滞后,您可能需要稍微消除这种影响。哇,从未见过这种情况。这是否适用于jQuery?@santa-是的,上面的第一个示例是使用jQuery。另请参见更新的答案,我忘记了
matchMedia
有一个提供回调的选项(我在第一个示例中没有选择.matches
)。