JavaScript >> Javascript 文檔 >  >> JavaScript

如何使用 JavaScript 檢測移動設備

要檢測用戶是否在 JavaScript 中使用移動設備,我們可以使用 userAgent 屬性。

此屬性是 navigator 的一部分 對象並由瀏覽器在 HTTP 標頭中發送。它包含有關瀏覽器的名稱、版本和平台的信息。

userAgent 的值 ,我們可以使用正則表達式來測試它是否包含一些關鍵字,然後確定設備的類型(移動設備、平板電腦或台式機)。可選地,您還可以將此測試與當前窗口的寬度相結合。

這是一個返回設備類型的函數,用戶當前正在使用:

const deviceType = () => {
    const ua = navigator.userAgent;
    if (/(tablet|ipad|playbook|silk)|(android(?!.*mobi))/i.test(ua)) {
        return "tablet";
    }
    else if (/Mobile|Android|iP(hone|od)|IEMobile|BlackBerry|Kindle|Silk-Accelerated|(hpw|web)OS|Opera M(obi|ini)/.test(ua)) {
        return "mobile";
    }
    return "desktop";
};

請注意,上述解決方案並不總是可靠的 . userAgent 的值 可以很容易地改變。例如,當我們使用機器人抓取網站時,我們可以傳遞一個完全不同的用戶代理值來隱藏我們的身份。這將使檢測實際設備類型變得困難。


Tutorial JavaScript 教程
  1. 反應 Tldr;明智地使用 React.memo()

  2. 一旦我們使用reactjs單擊提交按鈕,就無法顯示helperText?

  3. WordPress 中的響應式實時圖表:插件和繪圖

  4. 測試使用 React Router 的 React 應用程序

  5. 有沒有辦法在 React 中創建動態狀態和 setState

  6. 功能類型

  7. 2021 年 10 大最新 AngularJS 開發工具。

  1. 如何為某些行、文件或文件夾禁用 ESLint

  2. 回到 HTML、CSS 和 JavaScript 並用大約 200 行良好的舊代碼構建一個演講者網站

  3. 在 React Hooks 上暫停捏合縮放

  4. 你厭倦了 Bootstrap 嗎?開始使用 Metro 4:免費和開源

  5. 在前面使用不可編輯元素包裝文本輸入

  6. Node.js 教程 - 使用 Courier API 發送秘密消息

  7. ⏲️使用 AWS 在 5 分鐘內為您的靜態網站實施 CI-CD。

  1. React 風格指南合集

  2. 使用 Node.js 發出 HTTP 請求的 5 種不同方法

  3. 在 Amplify 上創建業務邏輯

  4. 用於 Web 開發的 UI Javascript 框架和庫