如何在javascript中实现css媒体查询的等效性

如何在javascript中实现css媒体查询的等效性,javascript,Javascript,我想更改下面的javascript,以便如果屏幕分辨率为768px或更低,header_height变量将减少到50而不是100,否则将保持在100。提前感谢您的帮助 $(窗口)。滚动(函数(){ var elem=$('.header'); 可变收割台高度=100; var header_top=elem.offset().top; var current_top=$(this).scrollTop(); if(当前顶部>收割台高度&&!elem.hasClass('fixed')) {

我想更改下面的javascript,以便如果屏幕分辨率为768px或更低,header_height变量将减少到50而不是100,否则将保持在100。提前感谢您的帮助


$(窗口)。滚动(函数(){
var elem=$('.header');
可变收割台高度=100;
var header_top=elem.offset().top;
var current_top=$(this).scrollTop();
if(当前顶部>收割台高度&&!elem.hasClass('fixed'))
{
元素addClass(“固定”);
$('body').addClass('fixed-padding');
}

否则,如果(当前)使用
窗口。调整大小
事件,而不是
滚动
事件来运行检查。当移动浏览器更改方向(从纵向到横向等)时,将触发调整大小事件


值得注意的是,
resize
事件在大多数浏览器上非常频繁,因此您可能希望“去盎司”它。此外,您还应该将查询选择器缓存在resize event handler函数之外。您不希望每次启动resize事件时它都会重复选择相同的元素。

您可以使用获取窗口宽度,并将其与三元运算符相结合,以设置
标题高度的值:

var header_height = (window.innerWidth <= 768) ? 50 : 100;
var header\u height=(window.innerWidth
var header_height = (window.innerWidth <= 768) ? 50 : 100;