首頁 > web前端 > js教程 > 如何在 Web 應用程式中可靠地偵測 iOS 裝置及其版本?

如何在 Web 應用程式中可靠地偵測 iOS 裝置及其版本?

Susan Sarandon
發布: 2024-12-05 04:22:17
原創
639 人瀏覽過

How Can I Reliably Detect iOS Devices and Their Versions in Web Applications?

偵測 iOS 裝置

開發 Web 應用程式時,偵測裝置的作業系統非常有用。特別是,iOS 設備具有可能需要特定處理的獨特特性。以下是實現此目的的方法:

用戶代理嗅探

常見的方法是用戶代理嗅探。然而,由於使用者或分機操作的可能性,這種方法不太可靠。不過,這裡有一個範例:

var iOS = !window.MSStream && /iPad|iPhone|iPod/.test(navigator.userAgent);
登入後複製

請注意,由於使用者代理字串的更改,此方法可能無法偵測執行 iOS 13 的 iPad。

平台偵測

更穩健的方法是檢查平台string:

function iOS() {
  return [
    'iPad Simulator',
    'iPhone Simulator',
    'iPod Simulator',
    'iPad',
    'iPhone',
    'iPod'
  ].includes(navigator.platform)
  || (navigator.userAgent.includes("Mac") && "ontouchend" in document);
}
登入後複製

此方法還可以區分iPad 和其他iOS 設備,包括iPadOS 13。

偵測 iOS 版本

在使用者代理程式解析時可以提供iOS版本,更可靠的方法是特徵推論。以下是一個範例:

function iOSversion() {
  if (iOS) {
    if (window.indexedDB) { return 'iOS 8 and up'; }
    if (window.SpeechSynthesisUtterance) { return 'iOS 7'; }
    if (window.webkitAudioContext) { return 'iOS 6'; }
    if (window.matchMedia) { return 'iOS 5'; }
    if (window.history && 'pushState' in window.history) { return 'iOS 4'; }
    return 'iOS 3 or earlier';
  }
  return 'Not an iOS device';
}
登入後複製

結論

這些技術使您能夠有效地檢測iOS 設備並確定其版本,從而允許您相應地自訂Web應用程式的行為。

以上是如何在 Web 應用程式中可靠地偵測 iOS 裝置及其版本?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板