这里是一个非常简单的问题。

我有一个所需的操作,当我更改窗口大小并且屏幕宽度小于800px时,将调用该操作。

$(window).resize(function() {
  if ($(window).width() < 800) {
    // this is where the magic happens
  }
});


我真正想做的是,当窗口的宽度从大于800的像素数量减少到800以下时,触发所需的动作。

例如,它现在的功能是在窗口大小调整到800以下时都将调用所需的动作。因此,将其从600px-> 800px调整会再次触发此动作,这不是我想要的

最佳答案

var previousWidth; //Define global variable

$(window).ready(function() {
    previousWidth = $(window).width(); //Assign initial width when window is ready
};

$(window).resize(function() {
  var newWidth = $(window).width();
  if (previousWidth >= 800 && newWidth < 800 || //Will trigger when going from larger than 800px to smaller than 800px
      previousWidth < 800 && newWidth >= 800) { //Will trigger when going from smaller than 800px to larger than 800px
    // this is where the magic happens
  }
  previousWidth = newWidth; //Update previous width variable
});

关于javascript - JS-窗口的宽度从大于800px的像素数量减小到800px以下导致触发 Action ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24633831/

10-09 03:38