使用 jquery 确定屏幕宽度



无法让此脚本在iPhone 6上正常运行。不断出现"不移动"。我错过了什么?

$(document).ready(function(){
    if ($(window).width < 700){
        alert("mobile");
    }
    else {
        alert("not mobile");
    }
});

编辑:抱歉,我在这里输入的代码有错别字,但不是我问题的原因。我对iPhone分辨率有不准确的信息。谢谢大家!

iPhone 6 显示屏的分辨率为 1334x750。在chrome开发工具中模拟iPhone6时,宽度被报告为980(我不知道这是否准确)。

您可能对此感兴趣: http://detectmobilebrowsers.com/

此外,正如其他人所指出的,将$(window).width改为$(window).width()

好吧,忽略ekuusela所说的屏幕分辨率,您似乎忘记了width后面的括号,这是一种方法,而不是字段。要解决此问题,只需在其后添加()

if ($(window).width() < 700)

有关详细信息,请参阅width()文档。

iPhone6屏幕为1334x750像素。如果仅使用宽度来检测移动用户,请改为参阅此内容。

JQuery 使用 $(window).width() 。它是一个函数,而不是一个属性。

如果您使用的是引导程序,请在屏幕上添加一个仅在某个断点显示的元素(引导程序 4):

<div id="IsMobile" class="d-block d-lg-none"></div>

然后,如果它可见:

if ($("#IsMobile").is(":visible")) {
     //Do Something...
}
你会

想要.width(),而不仅仅是.width。另外,记录它并确保它是您所期望的。

这个线程深入探讨了Javascript和JQuery中的选项

获取屏幕、当前网页和浏览器窗口的大小

function isMobileDevice() {
    return (typeof window.orientation !== "undefined") || 
        (navigator.userAgent.indexOf('IEMobile') !== -1);
}

这是一种传统的检查方式。 您可能应该使用这样的东西:

const isMobile = ('ontouchstart' in document.documentElement && /mobi/i.test(navigator.userAgent));

最新更新