Maison > interface Web > js tutoriel > le corps du texte

Comment distinguer Safari et WebViews sur les appareils iOS à l'aide de JavaScript ?

Linda Hamilton
Libérer: 2024-10-20 16:48:29
original
470 Les gens l'ont consulté

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

Détecter Safari et WebViews sur les appareils iOS avec JavaScript

Déterminer si un site Web s'exécute dans le navigateur Safari de l'iPad ou dans une application WebView est crucial pour personnaliser l’expérience utilisateur. Ceci peut être réalisé grâce à une combinaison des propriétés JavaScript window.navigator.userAgent et window.navigator.standalone.

En analysant la chaîne de l'agent utilisateur, nous pouvons identifier l'appareil comme un appareil iOS. S'il s'agit bien d'un appareil iOS, nous vérifions en outre la présence ou l'absence de window.navigator.standalone pour distinguer les différents scénarios :

  • Navigateur : Le site Web fonctionne dans le Navigateur Safari ; standalone est faux et l'agent utilisateur contient « Safari ».
  • Autonome : Le site Web fonctionne comme une application autonome ; autonome est vrai et l'agent utilisateur ne contient pas « Safari ».
  • WebView : Le site Web s'exécute dans la WebView d'une application ; standalone est faux et l'agent utilisateur ne contient pas "Safari".

Ce code JavaScript fournit une solution complète pour détecter l'environnement iOS et différencier les modes Safari et 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>
Copier après la connexion

Cette méthode vous permet d'adapter le comportement de votre application web à différents environnements, garantissant ainsi une expérience utilisateur optimale. Par exemple, une barre de navigation peut être masquée lorsque l'application est utilisée en mode autonome, ou des fonctionnalités spécifiques peuvent être désactivées lors de l'exécution dans la WebView d'une application.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!