Jquery-如何在不刷新浏览器的情况下检测浏览器高度的变化?

Jquery-如何在不刷新浏览器的情况下检测浏览器高度的变化?,jquery,viewport,Jquery,Viewport,我正在使用的代码 var height = $(window).height(); if (height>=768) { //change class for example. } else { //change class back. } 上面的代码可以很好地检测视图端口高度并应用类更改,但是如果我调整浏览器窗口的大小,我也希望此脚本能够检测何时发生这种情况,并基本上使用更新的高度值重新运行函数。怎么做 我在StackOverflow上找到了以下解决方案。我能够成功地实现它

我正在使用的代码

var height = $(window).height(); 

if (height>=768) {
  //change class for example.
}
else {
  //change class back.
}
上面的代码可以很好地检测视图端口高度并应用类更改,但是如果我调整浏览器窗口的大小,我也希望此脚本能够检测何时发生这种情况,并基本上使用更新的高度值重新运行函数。怎么做

我在StackOverflow上找到了以下解决方案。我能够成功地实现它们,但是,为了使函数应用类更改,我仍然必须刷新站点。它不是在浏览器上做的

这是一个:

  var width = $(window).width();

  $(window).resize(function(){
    if($(this).width() != width){
      width = $(this).width();
      console.log(width);
    }
  });
这是我尝试过的另一个解决方案,但仍然是同一个问题。我必须在新的视图端口设置中刷新浏览器,以使其识别差异

var height = $(window).height();

window.addEventListener('resize', setWindowSize);

function setWindowSize() {
  if($(this).height() != height){
  height = $(this).height();
  console.log(height);
  }
}

if (height <= 859  ) {
  $(".stats-events-2").removeClass("show-set").addClass("hide-set");
}
else {
  $(".stats-events-2").removeClass("hide-set").addClass("show-set");
}
var height=$(window.height();
addEventListener('resize',setWindowsSize);
函数setWindowsSize(){
如果($(this).height()!=高度){
高度=$(this).height();
控制台。原木(高度);
}
}
如果(高度<代码>变量高度=$(窗口).height();
addEventListener('resize',setWindowsSize);
函数setWindowsSize(){
如果($(this).height()!=高度){
高度=$(this).height();
控制台。原木(高度);
}
}

如果(高度为什么需要将其设置为一个变量?如果它低于阈值,则调用执行任何需要的操作的函数。顺便说一句,您是否需要添加一个类?如果您所要做的只是更改样式,则可以通过媒体查询来完成这些操作。在这个示例中,我需要更改高度,而不是媒体查询ries只适用于宽度?调整结果窗口的高度。哇,好的。我会给高度媒体查询一个镜头。同样,每个人都知道,CSS媒体查询也可以用于隐藏或显示div。谢谢Taplar!谢谢你的帮助,这正是我所需要的。我以为我出了问题,就像你提到的,只是不确定确切地说是如何组合起来的。再次感谢。
var height = $(window).height();

window.addEventListener('resize', setWindowSize);

function setWindowSize() {
    if($(this).height() != height){
        height = $(this).height();
        console.log(height);
    }
}

if (height <= 859  ) {
    $(".stats-events-2").removeClass("show-set").addClass("hide-set");
} else {
    $(".stats-events-2").removeClass("hide-set").addClass("show-set");
}
var $window = $(window);
var $statsEvents2 = $(".stats-events-2");

$window.on('resize', function() {
    if ($window.height() <= 859) {
        $statsEvents2.removeClass("show-set").addClass("hide-set");
    } else {
        $statsEvents2.removeClass("hide-set").addClass("show-set");
    }
});