繁体   English   中英

如何使用JavaScript检查视口是否小于特定宽度?

[英]How to check if viewport is smaller than a certain width using javascript?

我想要一个简单的语句来将变量bool设置为false或true。 当视口小于768px时,isMobile应该设置为true,并且在此数量以上时,应该将其设置为false。

我不知道为什么下面的代码什么都不做。 控制台日志中也没有错误。

var w = $(window).width();
var isMobile = false;

function resizer() {
    if (w < 768) {
        console.log("resize");
        isMobile = true;
    } else {
        isMobile = false;
    }
}

$(window).resize(function() {
    resizer();
});

因为您不必在每次调整大小时都测量宽度。 尝试这种方式:

var isMobile = false;

function resizer() {
    var w = $(window).width();
    if (w < 768) {
        console.log("resize");
        isMobile = true;
    } else { 
        isMobile = false;
    }
}

$(window).on('load resize', function(){ 
    resizer();
});

移动var w = $(window).width(); 内部resizer() 这将获取window 当前尺寸的值。

请参阅代码中的内联注释。

var isMobile = false;

function resizer() {
    var w = $(window).width();
    // Move this inside resize handler

    if (w < 768) {
        console.log("resize");
        isMobile = true;
    } else {
        isMobile = false;
    }
}

$(window).resize(function() {
    resizer();
}).trigger('resize');
// ^^^^^^^^^^^^^^^^^^
// 
// Trigger event on page load

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM