javascript - 检测移动设备是否带有 javascript 的最简单方法

标签 javascript

<分区>

检测设备是否为带有 javascript 的移动设备的最简单方法是什么?

我正在考虑检查高度是否小于或等于 iPhone 的浏览器视口(viewport)高度。说到这,iPhone 或移动设备的常见视口(viewport)高度是多少?

我在 javascript 中遇到了 window.height; 的问题,因为它返回未定义,但是?

有谁知道如何最好地简单地检测浏览器是否是带有 javascript 的移动设备?

最佳答案

这是我的爱好项目:

var Environment = {
    //mobile or desktop compatible event name, to be used with '.on' function
    TOUCH_DOWN_EVENT_NAME: 'mousedown touchstart',
    TOUCH_UP_EVENT_NAME: 'mouseup touchend',
    TOUCH_MOVE_EVENT_NAME: 'mousemove touchmove',
    TOUCH_DOUBLE_TAB_EVENT_NAME: 'dblclick dbltap',

    isAndroid: function() {
        return navigator.userAgent.match(/Android/i);
    },
    isBlackBerry: function() {
        return navigator.userAgent.match(/BlackBerry/i);
    },
    isIOS: function() {
        return navigator.userAgent.match(/iPhone|iPad|iPod/i);
    },
    isOpera: function() {
        return navigator.userAgent.match(/Opera Mini/i);
    },
    isWindows: function() {
        return navigator.userAgent.match(/IEMobile/i);
    },
    isMobile: function() {
        return (Environment.isAndroid() || Environment.isBlackBerry() || Environment.isIOS() || Environment.isOpera() || Environment.isWindows());
    }
};

您关于使用维度的解决方案不是一个好的解决方案。它依赖于实际设备尺寸和许多其他变量。

关于javascript - 检测移动设备是否带有 javascript 的最简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16755655/

相关文章:

javascript - VueJS - 查看模型、子项和更新值

javascript - 变量值未正确传递

javascript - 如果匹配则获取第一个值

javascript - 如何用自定义组件替换 React-Leaflet Popup?

javascript - 当我移动 div 时,JavaScript 内的 Nettuts 不起作用

javascript - 为什么 Firestore 将金额存储为字符串而不是数字?

javascript - 如何为函数生成唯一标识符,ID : rating system

javascript - 是什么导致网页重新加载?

带有 Dojo/Dijit 的 Javascript 智能感知是 Visual Studio 2008

javascript - Vue 2.7 getCurrentInstance() 尝试获取 $vuetify 等属性