首頁  >  文章  >  web前端  >  如何使用 JavaScript 區分 iOS 裝置上的 Safari 和 WebView?

如何使用 JavaScript 區分 iOS 裝置上的 Safari 和 WebView?

Linda Hamilton
Linda Hamilton原創
2024-10-20 16:48:29476瀏覽

How to Distinguish Safari and WebViews on iOS Devices Using JavaScript?

使用JavaScript 偵測iOS 裝置上的Safari 和WebView

確定網站是在應用程式的Safari 瀏覽器中運行還是在應用程式中運行對於自訂用戶體驗至關重要。這可以透過 window.navigator.userAgent 和 window.navigator.standalone JavaScript 屬性的組合來實現。

透過分析使用者代理字串,我們可以將該裝置識別為 iOS 裝置。如果確實是iOS 設備,我們會進一步檢查是否存在window.navigator.standalone,以區分不同的場景:

  • 瀏覽器: 網站運行在Safari 瀏覽器中;standalone為false,且使用者代理包含“Safari”。
  • 獨立: 網站以獨立應用程式運作;standalone 為 true,且使用者代理程式不包含「Safari」。
  • WebView: 網站在應用程式的 WebView 中運作;standalone 為 false,且使用者代理程式不包含「Safari」。

此JavaScript 程式碼提供了用於偵測iOS 環境並區分Safari 和WebView 模式的完整解決方案:

<code class="javascript">var standalone = window.navigator.standalone,
    userAgent = window.navigator.userAgent.toLowerCase(),
    safari = /safari/.test(userAgent),
    ios = /iphone|ipod|ipad/.test(userAgent);

if (ios) {
    if (!standalone && safari) {
        // Browser
    } else if (standalone && !safari) {
        // Standalone
    } else if (!standalone && !safari) {
        // WebView
    }
} else {
    // Not iOS
}</code>

此方法可讓您使Web 應用程式的行為適應不同的環境,確保最佳的使用者體驗。例如,當應用程式在獨立模式下使用時,可以隱藏導覽欄,或在應用程式的 WebView 中執行時可以停用特定功能。

以上是如何使用 JavaScript 區分 iOS 裝置上的 Safari 和 WebView?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn