javascript - 如何知道屏幕是缩小还是增加? [即时的]

标签 javascript jquery

我正在尝试检查用户是否减少增加屏幕。

我有以下功能并且工作正常,但它只依赖于初始屏幕尺寸:

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

$(function(){

    $(window).resize(function(){

      var resizeWidth = $(this).width();

      if (resizeWidth > width) {

        console.log('increased!')
        width = width + 1;

      } else {

        console.log('reduced!')
        width = width - 1;

      }
    });
});

是否可以随时知道屏幕是增大还是减小,而不是初始屏幕尺寸?

谢谢大家!

最佳答案

您设置的 window.resize 将连续触发。每次调整大小时只需存储旧宽度并将其与新宽度进行比较,比较后用新宽度替换旧宽度。

var win = $(window); // cache the window query since we'll be using it a lot

// set initial values
var oldWindowWidth = win.width();

// each time we resize
win.on('resize', function() {
  // get the new width
  var newWindowWidth = win.width();

  // compare it to the old width
  if (newWindowWidth > oldWindowWidth) {
    console.log('increased');
  }
  else if (newWindowWidth < oldWindowWidth) {
    console.log('descreased');
  }

  // update the old width
  var oldWindowWidth = newWindowWidth;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

关于javascript - 如何知道屏幕是缩小还是增加? [即时的],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40369816/

相关文章:

javascript - 外壳形式不验证

c# - 在表格单元格中显示按钮悬停/鼠标悬停

javascript - 如何在表单条目中给出 "same as the above"

javascript - 访问速度模板中的 jquery/javascript 变量

php - 使用 jquery 进行大型查询和过滤更好,还是进行更小的查询更好?

javascript - ReactJS 一次性初始化

javascript - 用于嵌套对象/数组的 Node console.log/util.inspect

javascript - PHP 无法获取 AJAX JSON 数据

javascript - Three.js 网络摄像头作为背景

Jquery 事件作为副作用被触发。如何阻止这种情况